Monday, October 31, 2016
3D Dual head in gutsy with ATI X200 some troubles and solutions
3D Dual head in gutsy with ATI X200 some troubles and solutions
I already had dual head up and running with Edgy, which was quite easy.
When I upgraded to Gutsy, things became more complicated.
The dual screen worked only in clone mode, without any way to have a proper dual screen.
So, I had to google a lot, and finally came to a solution.
First: enable 3d for ATI X200 (not strictly necessary for dual head, but nice nonetheless).
I followed Ubuntu Gutsy installation guide, using the manual installation method.
Here it is:
Method 2: Install the Catalyst 7.11 Driver Manually
* Note: This is just an alternative installation method for the section above. It might help if you still get DRI missing errors.
* Note: If you are running the -rt kernel, you will fail to compile the kernel module with "FATAL: modpost: GPL-incompatible module fglrx.ko uses GPL-only symbol __rcu_read_lock".
Download the ATI driver installer: ati-driver-installer-7-11-x86.x86_64.run (this installer is for 32bit and 64bit systems)
Change to the download directory. Make sure that you have the universe and multiverse repositories enabled in /etc/apt/sources.list before doing these steps.
There is a detailed manual with screenshots at Ubuntu Wiki.
By default, Ubuntu did not enable the Universe and Multiverse repositories, but now in Gutsy, both Universe and Multiverse are activated by default.
Install necessary tools:
sudo apt-get update
sudo apt-get install module-assistant build-essential fakeroot dh-make debhelper
debconf libstdc++5 linux-headers-generic
Create .deb packages:
sudo bash ati-driver-installer-7-11-x86.x86_64.run --buildpkg Ubuntu/gutsy
note: if this step fails with a signal being caught, and you are running the script on an NFS-mounted directory, copy it to a local partition, and it will work.
If this step fails on amd64/x86_64 with a No such file or directory message about missing files in X11R6/lib, follow these instructions and come back here.
Blacklist old fglrx module from linux-restricted-modules:
As Ubuntu Gutsys linux-restricted-modules package includes the fglrx module from an old driver version (8.37.6), we have to blacklist this module to make sure the new kernel module which is needed by the new driver will be used instead.
Ubuntu/Gnome users type in:
gksu gedit /etc/default/linux-restricted-modules-common
Kubuntu/KDE users type in:
kdesu kate /etc/default/linux-restricted-modules-common
Add "fglrx" to the line "DISABLED_MODULES"
File: /etc/default/linux-restricted-modules-common
DISABLED_MODULES="fglrx"
Please note that after the modification above, the "Restricted Driver Manager" will signal "ATI accelerated grapichs driver" not enabled (unticked). This is perfectly correct. At the end of the installation procedure it will signal in Status: "in use" (green light), but NOT enabled. It simply means that the fglrx module contained in the linux-restricted-modules package is not enabled, but another fglrx module (7.11) is in use.
Install .deb packages:
sudo dpkg -i xorg-driver-fglrx_8.433-1*.deb fglrx-kernel-source_8.433-1*.deb fglrx-amdcccle_8.433-1*.deb
* Note: If you get a Bad file descriptor message concerning the xorg.conf file try switching user to root and repeating the same command without sudo. This might be valid for the following commands too. (Ubuntu Gutsy installs with no password set for root by default. You can set a password for the root by typing sudo passwd root first.)
* Note: If you have a 64 bit install, the above dpkg command will likely complain that "Errors were encountered while processing: fglrx-amdcccle". This is because of a dependency of the amdccle package on 32 bit libraries. If you recieve this error, issue the following command after the above dpkg command, which will force the installation of all of the 32 bit dependencies, and then the amdccle pacakge:
sudo apt-get install -f
Remove any old fglrx debs from /usr/src/:
sudo rm /usr/src/fglrx-kernel*.deb
Fix broken dependencies
* Note: You only need to do this if you have installed previous versions of these drivers using this method before.
sudo apt-get -f install
Compile the kernel module:
sudo module-assistant prepare,update
sudo module-assistant build,install fglrx -f
sudo depmod -a
Its necessary, because sometimes this file is written by other packages, and so theres no 3D acceleration. Check that the file /lib/modules/$(uname -r)/misc/fglrx.ko has been created.
Create the following folder
sudo mkdir /lib/modules/$(uname -r)/volatile
Note: the volatile directory might already exist at this stage then simply continue with the next step.
Create a symbolic link
sudo ln -sf /lib/modules/$(uname -r)/misc/fglrx.ko /lib/modules/$(uname -r)/volatile/fglrx.ko
NOTE : On my Gutsy install, after a reboot this link was always removed automatically leaving me without an fglrx module loaded, and thus no ATI rendering. There have been several ways of getting around this suggested here, and here is the one that worked for me:
sudo gedit /etc/init.d/ati-module-fix
And put this in it:
#!/bin/sh -e
# For loading ATI display drivers
ln -sf /lib/modules/$(uname -r)/misc/fglrx.ko /lib/modules/$(uname -r)/volatile/fglrx.ko
exit 0
Make it executable
sudo chmod ugo+x /etc/init.d/ati-module-fix
Now, make this run before gdm (which starts with sequence number 13)
sudo update-rc.d ati-module-fix defaults 12
It is possible that gdm sequence number is different. To find the gdm sequence number:
ls /etc/rc2.d/
And substitute 12 in the previous command with gdm sequence number - 1.
IMPORTANT: You have to recompile the kernel module after each kernel update! (Note: This does not affect you until the next time you update your kernel.)
[edit] Configure the Driver
* Note Method 2 Users: Before you carry out this step you must reboot your machine. Or else the fglrx driver will not be in use on xorg.conf and using the aticonfig options will cause a memory dump and not intialise the Driver properly.
* Note: An alternative to the aticonfig --initial command is to edit /etc/X11/xorg.conf and replace the string "ati" with "fglrx" in the "Device" section. This way you wont lose your old "Screen" and "Monitor" settings. Afterwards you can use aticonfig for setting overlay etc. Another alternative is aticonfig --initial --force if you encounter issues with the first command.
sudo aticonfig --initial
Then:
sudo aticonfig --overlay-type=Xv
* Note: Is there an alternative to the previous step??
* Note: Alternative in the overlay-type to "Xv" can be "opengl" or "disable" if the TV-out makes problems in videos.
Finish the Installation
Now save any open document and reboot your system:
sudo shutdown -hr now
* Note: An alternative to rebooting is to restart the X Server by pressing your CTRL ALT BACKSPACE keys. You must remove any old kernel modules such as "drm" "radeon" or "fglrx" using the "rmmod" command. Example: sudo rmmod fglrx
Post-Installation Checks
Verifying
Run the following command to check its output to ensure the fglrx driver is installed properly:
$ fglrxinfo
display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI Radeon Xpress Series
OpenGL version string: 2.1.7059 Release
The OpenGL vendor string should read ATI and not Mesa.
In the Gutsy installation, you will find also how to enable desktop effects (compiz & such), but I skipped that passage).
Secondly, I enabled big destop
I followed this howto from Ubuntuforums.org
ATI Big-Desktop
Dual Monitor Support With Binary, ATI-Only Big-Desktop
The following HowTo attempts to enable Dual Monitor support by enabling the Big-Desktop function of the Ati-only binary graphics driver.
System Requirements:
ONE Dual-Output ATI graphics card
Functional Fglrx Driver.
The following guide explains how to install and enable the fglrx driver: https://help.ubuntu.com/community/BinaryDriverHowto/ATI
Lets get started!!!
Update: Instead of Manually editing the Xorg file, Ive decided to attempt to write a HowTo based on the "aticonfig" tool. So, for about a week or so, I need individuals to try out this method and report the outcome. You can continue to post in this thread, or you can send me a private message to report the result. So, here goes nothing!
1. I know you have already saved a back of the xorg.conf file (you did, didnt you? ).:
Code:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
2. Next, we want X to be using the fglrx driver, so:
Code:
sudo aticonfig --initial --overlay-type=Xv
3. Now that the xorg.conf is fit to be edited, enter the following commands:
Code:
sudo aticonfig --desktop-setup=horizontal --sync-vsync=on --add-pairmode=Width0xHeight0+Width1xHeight1
Heres what each command means:
Code:
--desktop-setup=horizontal
this command enables Big-Desktop, and places the two monitors next to each other (left-right orientation). Other arguments that could replace it are:
Code:
--desktop-setup=horizontal,reverse <= flips your screens.
--desktop-setup=vertical <=places your monitors in a up-down orientation.
--desktop-setup=vertical,reverse <=flips your screens.
--desktop-setup=clone
--desktop-setup=single
Code:
--sync-vsync=on
this command prevents tearing during 3D rendering.
Code:
--add-pairmode=Width0xHeight0+Width1xHeight1
this command tells X what are the resolutions for Monitor1+Monitor2.
4. Now, you can experiment with your monitors without restarting X. First, you need to see how X identifies your monitors:
Code:
sudo aticonfig --query-monitor
Then based on the information provided by the query monitor command, replace STRING in the following command:
Code:
sudo aticonfig --enable-monitor=STRING,STRING
The values of STRING should be one of these:
Code:
none crt1 crt2 lvds tv tmds1 tmds2
5. If the enable-monitor command works for you, then you need to add it to the config file:
Code:
sudo aticonfig --force-monitor=STRING,STRING
Again replace STRING with the values given by query-monitor.
5. Now restart X (ctrl+alt+backspace) or reboot your computer.
Note: the --enable-monitor command DOES NOT change your configuration file (xorg.conf). Therefore when you restart X or your computer, it may or may not work.
If this method doesnt work, you may have to edit your xorg.conf manually (following the above-mentioned howto).
Hope this helps: it worked for me :-)
Available link for download