The purpose of this document is to summarize the discussion on http://forums.gentoo.org/viewtopic.php?t=54793 as well as be a reference for those trying to get their radeons working on Gentoo system using Ati Binary Drivers.
This document is on its earlier stages of development so expect it to be changed/updated rather quickly.
Index
- What are the binary drivers and why to use them?
- Where to get the drivers?
- Know Issues
- Supported Cards
- Setup Guides
- Quick Setup Guide
- Unofficial ebuilds for 3.2.0 and 3.2.4 drivers
- Dual Monitor Setup Guide
- TV-Out Setup Guide
- FSAA Setup Guide
- Hidden Options(use at your own risk)
- Where to get more information
- Troubleshooting
- Acknowledgments
- What are the binary drivers and why to use them
The ATI binary drivers are the linux device drivers provided by ATI. They are the only ones(nowadays) that support OpenGl acceleration for the R300 based cards. - Where to get the drivers:
- 2.9.12 -> from portage
- 2.9.13 -> from portage
- 3.2.0 -> from portage
- 3.2.4 -> from portage
Currently only driver versions 2.9.13-r1 and above will work on 2.6 kernels.
NOTE :
The performance of the 3.2.x drivers is slightly worse than the 2.9.x series. You can find some tips on how to increase their performance on the "Hidden Options" section. - Know Issues
- Drivers 3.2.4 don't work with DGA enabled
You have to set:In the beginning of your XF86Config fileCode: Select all
# This loads the miscellaneous extensions module, and disables # initialisation of the XFree86-DGA extension within that module. SubSection "extmod" Option "omit xfree86-dga" # don't initialise the DGA extension EndSubSection - Xinerama and 3D acceleration does not work togheter. You can have 3D acceleration, or Xinerama (one screen on multiple monitors), but not both. It is a limitation of the drivers. (There are another way of doing that that is supported by the drivers, wait for the Dual Monitor Setup Guide or play with the fglrxconfig).
- Option "BlockSignalsOnLock" should always be set to "on" unless you are debugging a multithreaded OpenGL app. Turning it off can lead to memory leaks. (from the readme on schneider.de).
- Drivers 3.2.4 don't work with DGA enabled
- Supported Cards
- Official List (for version 3.2.03 - source www.schneider-digital.de):
- Graphics Accelerators:
- ATI Radeon 8500, 9100, 9200, 9500, 9600, 9700, 9800, M9, M9+, M10
- ATI FireGL 8700, 8800, E1, E2, X1, X2, Z1
- Video Driver for Linux:
- Driver Version 4.1.0-3.2.0
- Driver Version 4.2.0-3.2.0
- Driver Version 4.3.0-3.2.0
- Graphics Accelerators:
- Unofficial List, but know that it works:
- Official List (for version 3.2.03 - source www.schneider-digital.de):
- Setup Guides
- Quick Setup Guide
- For kernels 2.2.*
- For kernels 2.4.*
Code: Select all
emerge <kernel-type>-sources cd /usr/src/linux make menuconfig (configure your kernel, read gentoo docs for that. You should disable the DRI on the kernel otherwise the ati driver will not work.) make dep make clean make bzImage make modules make modules_install emerge ati-drivers emerge alsa-driver (if you want to use alsa, read the gentoo docs on the subject) mount /boot cp /usr/src/linux/arch/i386/boot/bzImage /boot/<your kernel boot name> nano /boot/grub/grub.conf(if you are using grub) (change grub.conf to load your new bzImage) reboot /opt/ati/bin/fglrxconfig (answer as you see fit) opengl-update ati cd /etc/X11/ nano XF86Config-4 (edit as you see fit) mv XF86Config-4 XF86Config - For kernels-2.6.*
Code: Select all
emerge <kernel-type>-sources cd /usr/src/linux make menuconfig (configure your kernel, read gentoo docs for that. You should disable the DRI on the kernel otherwise the ati driver will not work.) make make modules_install emerge ati-drivers mount /boot cp /usr/src/linux/arch/i386/boot/bzImage /boot/<your kernel boot name> nano /boot/grub/grub.conf(if you are using grub) (change grub.conf to load your new bzImage) reboot /opt/ati/bin/fglrxconfig (answer as you see fit) opengl-update ati cd /etc/X11/ nano XF86Config-4 (edit as you see fit) mv XF86Config-4 XF86Config
- Unofficial ebuilds for 3.2.0 and 3.2.4 drivers:
These are beta-drivers, use them at your own risk.
To install these ebuilds:- Create the directory media-video/ati-drivers inside your portage overlay directory. This can be set in /etc/make.conf by the PORTDIR_OVERLAY setting. /usr/local/portage is fine in most cases.
Code: Select all
nano /etc/make.conf mkdir -p /usr/local/portage/media-video/ati-drivers - Download the driver packages (links are in the "Where to get the drivers" section.)
- Download this file: http://odin.prohosting.com/wedge01/ati-drivers.tar.bz2
-
Code: Select all
mv ati-drivers.tar.bz2 /usr/local/portage/media-video/ati-drivers cd /usr/local/portage/media-video/ati-drivers tar -xvjf ati-drivers.tar.bz2 ebuild ati-drivers-3.2.0-r2.ebuild digest ebuild ati-drivers-3.2.4-r2.ebuild digest - Then emerge the drivers as usual. Note that you will need to use ACCEPT_KEYWORDS="~x86". To emerge a particular version, use the following method
Code: Select all
ACCEPT_KEYWORDS="~x86" emerge =ati-drivers-3.2.0-r2
- Create the directory media-video/ati-drivers inside your portage overlay directory. This can be set in /etc/make.conf by the PORTDIR_OVERLAY setting. /usr/local/portage is fine in most cases.
- Dual Monitor Setup Guide
- TV-Out Setup Guide
- FSAA Setup Guide
To enable Full Screen AntiAliasing support, you must upgrade to the 3.2.0 or the 3.2.4 drivers. After generating an XF86Config file via fglrxconfig, you can then control the FSAA mode through the "FSAAScale" driver option.
The values you can set appear to be:- 1 (anything <1 gets set to 1)
- 2 (3 gets set to 2)
- 4 (5 gets set to 4)
- 6 (anything >6 gets set to 6)
glxgears fps at each FSAA setting:- 1 - ~4300fps
- 2 - ~2300fps
- 4 - ~1300fps
- 6 - ~880fps
- Hidden options (use at your own risk)
Hidden options are undisclosed by ATI options that can change the drivers performance or behaviour. They can be enabled/disabled by putting the following lines on the "Device" section of your XF86Config file:Here is a list of the knows hidden options:Code: Select all
Option "<Option_Name>" "<Option_Parameters>"- EnablePrivateBackZ
Know parameters:- yes - enable the option
- no - disable the option
When enabled it improves the performance of 3.2.x drivers.
Side-Effects:
None Know. - UseFastTLS
Know parameters:- 0 - fast
- 1 - faster
- 2 - working with everything
TLS settings are critical for many apps you may like to use (just to name one: wine). The UseFastTLS should be 2 if you want wine and other apps with wacky threading models working fine.
Side-Effects:
When set to something different than 2 some apps might stop working.
- EnablePrivateBackZ
- Quick Setup Guide
- Where to get more information
- Troubleshooting
- Lock-ups on Tux-Racer, Return to Castle Wolfenstein, Enemy Territory, Q3A and possible other games/apps.
Probable Cause: Bug on drivers <3.*
Solution:- Update to newer drivers.
- On Enemy Territory you can solve the problem by starting the game using the following line:
Code: Select all
et +set r_ext_compiled_vertex_array 0
- When starting X, an error similar to the following is displayed:
Probable Cause(s):
Code: Select all
(EE) fglrx(0): [agp] unable to acquire AGP, error "xf86_ENODEV" (EE) fglrx(0): cannot init AGP- You have no AGP support compiled into your kernel.
- You have AGP support compiled as modules but don't have the modules loaded.
- Compile support for agpgart and your motherboards AGP chipset into the kernel.
- If you have AGP support compiled as modules, load those modules before loading the fglrx module.
- Use the internal AGP support provided by the fglrx driver (NOTE: will not work in all situations). Set the "UseInternalAGPGart" option in your XF86Config to "yes" to enable internal AGP support.
- During the emerge, fgl_glxgears and fireglcontrol fail to compile with an error similar to:
Probable Cause: Unknow.
Code: Select all
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.3/../../../../i686-pc-linux-gnu/bin/ld: cannot find -lGL lect2: ld returned 1 exit status
Solution :Code: Select all
opengl-update xfree (run the emerge again) opengl-update ati - On a 2.6 kernel the driver module appears with the name "1" in lsmod instead of "fglrx".
Probable Cause: Incorrect file headers on the driver.
Solution :
Use any of the following driver versions, which should fix this problem:- ati-driver-2.9.13-r2
- ati-driver-3.2.0-r2
- ati-driver-3.2.4-r2
- Screen goes black when X starts. Still able to use CTRL-ALT-Fn to change back to the console
Problable Cause: Misconfigured Monitor Timings.
Solution :
Find the correct specs for your monitor VSync and HSync. Update XF86Config - Screen goes black when X starts. Not able to use CTRL-ALT-Fn to change back to the console. Servers still working (ex Apache, SSH, etc).
Problable Cause: FSAA bug on some machines, pattern yet to be determined.
Solution:
Turn off FSAA. Post your problem on http://forums.gentoo.org/viewtopic.php?t=54793 . - Monitor refresh rate stuck at a certain value, X appears to ignore the modeline option.
Probable Cause: Trouble with EDID.
Solution:
Try setting "IgnoreEDID" to "ON", and then specifying a value for the VRefresh2. setting - Still having problems after following this guide.
Probable Cause: Monitor connected to second video slot, computer thinks it is on the first or vice-versa.
Solutions:
Change the BusID "PCI:1:0:1" line to BusID "PCI:1:0:0" or vice-versa.
- Lock-ups on Tux-Racer, Return to Castle Wolfenstein, Enemy Territory, Q3A and possible other games/apps.
- Acknowledgments
Authors (alphabetic order):- deurk
- fca
- Francis85
- gralves - Gustavo Ribeiro Alves
- KillaK
- lu_zero
- Wedge_





