For most users it won't be necessary to go into installation and configuration details of the driver. Ubuntu 8.04 (Hardy) provides a notification saying that there are restricted drivers available. You just have to go there (Restricted Drivers Manager) and enable the "ATI accelerated graphics driver". Ubuntu will then install and configure the driver for you. If this does not provide the optimal solution you were looking for, please read ahead.

+

+

After installation, in GNOME or Kubuntu, '''turn off visual effects''' or you will notice a flicker in OpenGL.

+

+

+

== Method 1: Install the driver the Ubuntu Way ==

+

+

This will install the current driver in Ubuntu's repository. It is older than the one AMD has released, but will be supported by the Ubuntu people. Catalyst 8.3 is in the repositories.

The second line may not be necessary as you may already have restricted modules installed. Run it just in case. If the third line fails, you probably don't have the restricted repository enabled. See Pre-Installation.

+

+

After this, you may need to edit Xorg.conf:

+

+

{{Box Terminal|

+

$ sudo gedit /etc/X11/xorg.conf

+

}}

+

+

In the device section, if it is not already there add:

+

+

{{Box File|/etc/X11/xorg.conf|

+

Driver "fglrx"

+

}}

+

+

Then to make sure Xorg is set up correctly, you'll have to let aticonfig "initialize" it:

+

+

{{Box Terminal|

+

$ sudo aticonfig --initial -f

+

}}

+

+

After this you should be able to restart your computer and have the driver working. To test type

+

+

{{Box Terminal|

+

$ fglrxinfo

+

}}

+

+

into a terminal. If the vendor string is not ATI, but Mesa, check [[#Removing Mesa drivers]]

+

+

==== Post-Installation Tweaks ====

+

To enable hardware accelerated video on pre-R500 cards, edit '''/etc/X11/xorg.conf''' to include the following lines without '''[...]'''

On newer cards the options below enables Visual Effects and video to be played without flicker. The Textured video option can be turned on, but this can cause flicker or diagonal artifacts when playing videos.

+

+

{{Box File|/etc/X11/xorg.conf|

+

Section "Device"

+

:[...]<br />

+

:Driver "fglrx"<br />

+

:Option "VideoOverlay" "off"<br />

+

:Option "OpenGLOverlay" "on"<br />

+

:Option "TexturedVideo" "off"<br />

+

:[...]<br />

+

EndSection

+

}}

+

+

== Method 2: Manual Install Method ==

+

+

Make sure ''universe'' and ''multiverse'' are enabled in your repository sources.

# If you are using the x86_64 architecture (64 bit, earlier known as amd64), install ia32-libs as well:<br />

+

$ sudo apt-get install ia32-libs

+

}}

+

+

===''2. Download the latest Catalyst package.''===

+

+

Download page: Catalyst {{catalystversion}}. This package contains both the 32-bit and 64-bit driver.

+

+

Open a terminal window and switch to the directory you downloaded the installer to.

+

For example:<pre>cd Desktop</pre>

+

+

'''or''' just use wget:

+

{{Box Terminal|

+

$ wget http://www2.ati.com/drivers/linux/{{catalystfilename}}

+

}}

+

+

===''3. Create .deb packages.''===

+

{{Box Terminal|

+

$ chmod +x {{catalystfilename}}

+

+

$ sh {{catalystfilename}} --buildpkg Ubuntu/hardy

+

}}

+

("hardy" is not a typo)

+

+

===''4. Add driver to kernel module blacklist.''===

+

'''NOTE''': This step is no longer necessary with fglrx 8.10 or 8.12. Just jump to step 5 in that case.

+

+

The ATI driver must be added to the kernel module blacklist so that the new ATI driver will be used. If it is not blacklisted, the official Ubuntu repository version of the ATI driver will be loaded instead.

+

+

{{Box Terminal|

+

$ sudo gedit /etc/default/linux-restricted-modules-common

+

}}

+

+

Add "fglrx" to the line "DISABLED_MODULES"

+

{{Box File|/etc/default/linux-restricted-modules-common|

+

<pre>DISABLED_MODULES="fglrx"</pre>

+

}}

+

+

Please note that after the modification above, the "Restricted Driver Manager" will signal "ATI accelerated graphics 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 ({{catalystversion}}) is in use.

+

+

You may also need to edit the file(s) (if they exist):

+

{{Box Terminal|

+

$ sudo gedit /etc/modprobe.d/blacklist-restricted

+

+

$ sudo gedit /etc/modprobe.d/blacklist-local

+

}}

+

+

Put a # in front of the line "blacklist fglrx", if it is present. Otherwise, the kernel module will not load automatically, and you will not get 3D acceleration.

''Using [http://en.wikipedia.org/wiki/Command_line_completion tab completion] can make this command easier.''

+

+

=== Additional 64-bit instructions ===

+

+

If you have a 64 bit install, the above dpkg command may 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 receive 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 package:

When installing the packages, if <tt>xorg-driver-fglrx_8.593</tt> fails to install due to a diverted file conflict, you can [http://emmetcaulfield.net/Tech/ATIv84+Hardy/ fix the package with this procedure].

Now you'll likely have to edit your xorg.conf (even if just to confirm the above command added the apropriate fglrx line):

+

<pre>sudo gedit /etc/X11/xorg.conf</pre>

+

and add the following line to the Device section (if it does not already exist). Include the following lines without '''[...]''':

+

<pre>Section "Device"

+

[...]

+

Driver "fglrx"

+

[...]

+

EndSection</pre>

+

Make the appropriate changes to "TexturedVideo" and "Overlay", etc., as described above in the "automatic section".

+

Save and exit, then

+

in a terminal. If it does not error you should be fine.

+

+

Some people find that changes to xorg.conf don't get used by the driver. To force the ati driver to adopt changes made to xorg.conf, type the following command:

+

<pre>

+

sudo aticonfig --input=/etc/X11/xorg.conf --tls=1

+

</pre>

+

Finally, reboot the computer and type

+

<pre>

+

fglrxinfo

+

</pre>

+

into the terminal. If the vendor string contains ATI, you have installed the driver successfully. Release 8.8 looks like:

+

<pre>

+

display: :0.0 screen: 0

+

OpenGL vendor string: ATI Technologies Inc.

+

OpenGL renderer string: Radeon X1950 Series

+

OpenGL version string: 2.1.7873 Release

+

</pre>

+

+

+

Please note: Depending on the particular ATI card that you own, you may or may not automatically have all of the relevant driver features enabled. R500 and R600 cards (X1xxx, HD series, and newer) in particular will need TexturedVideo enabled in Xorg.conf (rather than the traditional VideoOverlay) in order to support Xv accelerated video playback.

+

+

=== Removing Mesa drivers ===

+

If fglrxinfo reports that Indirect rendering by Mesa is in place, even though you have installed ATI driver, check:

+

+

*Remove the package xserver-xgl.

+

:<pre>sudo apt-get remove xserver-xgl</pre>

+

:'''Explanation:''' If you installed this previously in order to make compiz work, it will not allow direct rendering on your display. You can check out if this is what it causing the problem by running

+

:<pre>DISPLAY=:0 glxinfo | grep render</pre>

+

:If it returns an ATI renderer, it means that xgl is being displayed indirectly on the display 1. (Taken from [http://ubuntuforums.org/showthread.php?t=740287])

+

+

:'''Warning:''' This might make your compiz stop working as it is configured to use XGL. A solution might be to run the Envy script in order to configure compiz. Or, if Compiz stopped working due to "Composite" problem, check that the following is set in the /etc/X11/xorg.conf

+

<pre>

+

Section "Extensions"

+

Option "Composite" "Enable"

+

EndSection

+

</pre>

+

+

+

----

+

+

+

*Check for AGP and DRI errors in /var/log/Xorg.0.log like these are:

+

:<i>(EE) fglrx(0): [agp] unable to acquire AGP, error -1023

+

:(EE) fglrx(0): cannot init AGP

+

:(EE) fglrx(0): atiddxDriScreenInit failed, GPS not been initialized.

+

:(WW) fglrx(0): * DRI initialization failed! *</i>

+

+

:If you have Intel 8285P and E7205 chipsets and AGP not detected then you have to remove the i82875p_edac module and restart a some others:

+

<pre>rmmod i82875p_edac

+

rmmod fglrx

+

rmmod intel-agp

+

rmmod agpgart

+

modprobe agpgart

+

modprobe intel-agp

+

modprobe fglrx</pre>

+

+

:Blacklist the modules e7xxx_edac so it doesn't start up again when booting - add the following line at the beginning of /etc/modprobe.d/blacklist:

+

:<pre>blacklist i82875p_edac</pre>

+

+

:This has been known to fix issues with -Mesa -AGP -DRI -Google earth and -suspend to RAM (s2ram).

If you experience such errors (and have ''glxinfo'' report ''"Direct rendering"'' as ''No'' despite following the whole procedure without any errors) you may want to have a look at the '''Specific Issues''' chapter of the '''Ubuntu Gutsy Installation Guide''' [[http://wiki.cchtml.com/index.php/Ubuntu_Gutsy_Installation_Guide#If_you_get__.2Fusr.2FX11R6.2Flib.2Fmodules.2Fdri.2Ffglrx_dri.so_not_found]] as this may be due to missing links or wrong permissions.

+

+

=== Hang at logout ===

+

+

If you experience hangs when logging out (of X) it is probably due to the /etc/ati/authatieventsd.sh script looking for X authorisation files in the wrong place when it starts up. You can kill the hanging authatieventsd.sh processes from a console tty to allow the shutdown of the X server. This can be fixed permanently with:

+

+

<pre>sudo mkdir -p /var/lib/xdm/authdir

+

sudo ln -s /var/run/xauth /var/lib/xdm/authdir/authfiles</pre>

+

+

If that doesn't work then you can disable atieventsd with this command:

+

+

<pre>sudo /usr/sbin/update-rc.d -f atieventsd remove</pre>

+

+

=== Suspend/Hibernation ===

+

+

Suspend hibernation '''works''' with the latest driver.

+

+

For ATI X1400, to get the laptop to wake up from suspend, I had to change the following in /etc/default/acpi-support:

+

+

<pre>

+

SAVE_VBE_STATE=false

+

+

POST_VIDEO=false

+

+

ENABLE_LAPTOP_MODE=false

+

</pre>

+

+

+

For Radeon 3200, to wake up from suspend, I had to add the following lines to /etc/X11/xorg.conf:

+

(This settings is not good option, if you are using compiz-fusion or any other transparency-based thingie. Not working for HD 3850)

+

+

<pre>

+

Section "Extensions"

+

Option "Composite" "Disable"

+

EndSection

+

+

Section "ServerFlags"

+

Option "AIGLX" "off"

+

EndSection

+

</pre>

+

+

Resume from suspend failed when using dual monitor configuration in xorg.conf.

+

E.g. when using

+

<pre>

+

aticonfig --initial=dual-head --screen-layout=right

+

</pre>

+

Switching back to a single monitor configuration and restarting the xserver (though not beautiful) solves this.

+

+

=== Error! This module/version combo is already installed ===

+

+

Simply uninstall the previous version before installing the new one with

+

<pre>

+

sudo dkms remove -m fglrx -v 8.522 --all

+

</pre>

+

+

[[Category:Installation Documentation]]

Revision as of 00:33, 23 August 2011

For most users it won't be necessary to go into installation and configuration details of the driver. Ubuntu 8.04 (Hardy) provides a notification saying that there are restricted drivers available. You just have to go there (Restricted Drivers Manager) and enable the "ATI accelerated graphics driver". Ubuntu will then install and configure the driver for you. If this does not provide the optimal solution you were looking for, please read ahead.

After installation, in GNOME or Kubuntu, turn off visual effects or you will notice a flicker in OpenGL.

The second line may not be necessary as you may already have restricted modules installed. Run it just in case. If the third line fails, you probably don't have the restricted repository enabled. See Pre-Installation.

After this, you may need to edit Xorg.conf:

Terminal Command

$ sudo gedit /etc/X11/xorg.conf

In the device section, if it is not already there add:

File: /etc/X11/xorg.conf

Driver "fglrx"

Then to make sure Xorg is set up correctly, you'll have to let aticonfig "initialize" it:

Terminal Command

$ sudo aticonfig --initial -f

After this you should be able to restart your computer and have the driver working. To test type

On newer cards the options below enables Visual Effects and video to be played without flicker. The Textured video option can be turned on, but this can cause flicker or diagonal artifacts when playing videos.

File: /etc/X11/xorg.conf

Section "Device"

[...]

Driver "fglrx"

Option "VideoOverlay" "off"

Option "OpenGLOverlay" "on"

Option "TexturedVideo" "off"

[...]

EndSection

Method 2: Manual Install Method

Make sure universe and multiverse are enabled in your repository sources.

3. Create .deb packages.

4. Add driver to kernel module blacklist.

NOTE: This step is no longer necessary with fglrx 8.10 or 8.12. Just jump to step 5 in that case.

The ATI driver must be added to the kernel module blacklist so that the new ATI driver will be used. If it is not blacklisted, the official Ubuntu repository version of the ATI driver will be loaded instead.

Terminal Command

$ sudo gedit /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 graphics 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 (14.12) is in use.

You may also need to edit the file(s) (if they exist):

Terminal Command

$ sudo gedit /etc/modprobe.d/blacklist-restricted

$ sudo gedit /etc/modprobe.d/blacklist-local

Put a # in front of the line "blacklist fglrx", if it is present. Otherwise, the kernel module will not load automatically, and you will not get 3D acceleration.

Additional 64-bit instructions

If you have a 64 bit install, the above dpkg command may 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 receive 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 package:

Please note: Depending on the particular ATI card that you own, you may or may not automatically have all of the relevant driver features enabled. R500 and R600 cards (X1xxx, HD series, and newer) in particular will need TexturedVideo enabled in Xorg.conf (rather than the traditional VideoOverlay) in order to support Xv accelerated video playback.

Removing Mesa drivers

If fglrxinfo reports that Indirect rendering by Mesa is in place, even though you have installed ATI driver, check:

Remove the package xserver-xgl.

sudo apt-get remove xserver-xgl

Explanation: If you installed this previously in order to make compiz work, it will not allow direct rendering on your display. You can check out if this is what it causing the problem by running

DISPLAY=:0 glxinfo | grep render

If it returns an ATI renderer, it means that xgl is being displayed indirectly on the display 1. (Taken from [1])

Warning: This might make your compiz stop working as it is configured to use XGL. A solution might be to run the Envy script in order to configure compiz. Or, if Compiz stopped working due to "Composite" problem, check that the following is set in the /etc/X11/xorg.conf

Section "Extensions"
Option "Composite" "Enable"
EndSection

Check for AGP and DRI errors in /var/log/Xorg.0.log like these are:

(EE) fglrx(0): [agp] unable to acquire AGP, error -1023

(EE) fglrx(0): cannot init AGP

(EE) fglrx(0): atiddxDriScreenInit failed, GPS not been initialized.

(WW) fglrx(0): * DRI initialization failed! *

If you have Intel 8285P and E7205 chipsets and AGP not detected then you have to remove the i82875p_edac module and restart a some others:

Specific Issues

Segmentation Fault with glxinfo/fglrxinfo

If you experience such errors (and have glxinfo report "Direct rendering" as No despite following the whole procedure without any errors) you may want to have a look at the Specific Issues chapter of the Ubuntu Gutsy Installation Guide [[5]] as this may be due to missing links or wrong permissions.

Hang at logout

If you experience hangs when logging out (of X) it is probably due to the /etc/ati/authatieventsd.sh script looking for X authorisation files in the wrong place when it starts up. You can kill the hanging authatieventsd.sh processes from a console tty to allow the shutdown of the X server. This can be fixed permanently with:

If that doesn't work then you can disable atieventsd with this command:

sudo /usr/sbin/update-rc.d -f atieventsd remove

Suspend/Hibernation

Suspend hibernation works with the latest driver.

For ATI X1400, to get the laptop to wake up from suspend, I had to change the following in /etc/default/acpi-support:

SAVE_VBE_STATE=false
POST_VIDEO=false
ENABLE_LAPTOP_MODE=false

For Radeon 3200, to wake up from suspend, I had to add the following lines to /etc/X11/xorg.conf:
(This settings is not good option, if you are using compiz-fusion or any other transparency-based thingie. Not working for HD 3850)