tagline: From openSUSE
|Tested on openSUSE||Recommended articles||Related articles|
- 1 Do I need to install the radeon driver?
- 2 Install the radeon driver
- 3 Testing the driver
- 4 Configuring the driver manually
- 5 See also
Do I need to install the radeon driver?
- If you installed openSUSE 11.4 or above on a computer with a Radeon chipset, the radeon driver should already be installed and running. To check this you can type into a terminal
If the result is "radeon" then the driver is already installed. If you have a graphical session running, then you may skip straight to SDB:Radeon#Testing the driver
- If you installed or tried to install the proprietary AMD fglrx driver, you need to completely remove this driver and afterwards fallback to the radeon module, before you can proceed. Please proceed to the following guidelines.
Install the radeon driver
Use this procedure only if you wish to fallback to the radeon driver from a (failed) fglrx install, since openSUSE installs, configures and uses the radeon driver in most cases by itself.
- If your current setup is working, make a back up of your xorg.conf (if you have one) and note what driver you are using, so you can revert to a working configuration if you have to.
- Work in runlevel 3, where you can safely edit your graphical configuration:
- Switch to tty 1 channel by hitting Ctrl-Alt-F1. That brings you to a full screen text login
- Login as a regular user
- Type "su" (no quotes - enter root password) to switch users to the administrator/root.
- Type:$ init 3
Remove the proprietary fglrx driver if present
- Run any uninstall scripts that AMD provided.
- However, if you did a one click install or installed from the repository with YaST or zypper, use zypper to uninstall all packages with "fglrx" in them.
- Search for installed fglrx packages: zypper se fglrx
- Remove any packages found from the search string, without quotes: zypper rm "name found package"
- Search for installed fglrx packages:
- Then run the following command to ensure one last time all proprietary driver packages are in fact removed: rpm -qa | grep fglrx
Check if radeon still is blacklistedOne of the first things fglrx does to ensure that radeon doesn't interfere with it is it blacklists the radeon module so that the kernel doesn't load it while booting. This needs to be removed:
depending on your openSUSE version.
When fglrx is installed, aticonfig creates a /etc/X11/xorg.conf, containing configuration details for running fglrx. To make sure your system is completely purged from fglrx you need to backup this file if still present by renaming it to for example "xorg.conf.bc".
Activate the radeon driver/kernel moduleLoad the radeon kernel module:
Testing the driverTo tell if the driver is working, type the following in a terminal window:
If everything is working, a new window with colored spinning gears should appear, and the terminal window will start displaying frame rates every five seconds. And you're done.
What if everything is not working?
If you try to run glxgears or any other OpenGL based app and see error messages that look like this:
X Error of failed request: BadRequest (invalid request code or no such operation) Major opcode of failed request: 135 (GLX) Minor opcode of failed request: 19 (X_GLXQueryServerString) Serial number of failed request: 17 Current serial number in output stream: 17
Then there is most likely something wrong with OpenGL implementation or direct rendering. Check the following:
- Make sure the package "Mesa" is installed. You can use YaST to do this.
- If you don't have Mesa, install it, restart the X.Org server, and try glxgears again.
- In a terminal, run glxinfoand look for/grep the following:
- direct rendering: Should say "Yes". If it says "No" then check your Xorg logs for more information.
- OpenGL version string: This should have something like "1.5 Mesa 7.6.1" or something similar. If it says anything about "fglrx" or "ATI" then make sure that you have fully uninstalled the proprietary driver.
- Check your xorg.conf if you have one
- If so, consider removing /etc/X11/xorg.conf:
- Since in most cases the radeon module auto-magically configures your hardware without the need of configuration files
- Try this by renaming xorg.conf for example to xorg.conf.bc and then restarting the X server. If this failles, restore the xorg.conf.bc file and then restart
- If you need to keep your xorg.conf:
- Make sure that under the Device section, "Driver" is set to "radeon"
- Make sure that the following section exists. If it does not, add it at the end:
- If so, consider removing /etc/X11/xorg.conf:
Section "DRI" Group "video" Mode 0660 EndSection
- Check your xorg log: /var/log/Xorg.0.log or any other xorg related log you may find here. These are often very informative.
In case of kernel panic
If upon rebooting after uninstalling the fglrx driver you get kernel panics involving radeon missing (with error messages such as "unable to handle null pointer dereference") this may be caused by Plymouth requiring KMS drivers, which can be unset by the fglrx installer. To get radeon back in the inird so Plymouth works again, open /etc/sysconfig/kernel as root and edit the following line:
After re-enabling KMS you will need to rebuild the ramdisk, so as root run:
Configuring the driver manually
Nowadays in most situations all AMD graphics hardware is configured automagically. In these cases there is no need for any further configuration. However, in those cases where your hardware is not configured properly, you can try to manually configure your graphical system. In this article the manual configuration happens in /etc/X11/xorg.conf with a "Device" section devoted to your card. Before you proceed, consider that this is not without risk: Some options can crash your X server. It is advised to read this how to forum post, before you go any further.
Create an Xorg.conf
If you don't have ANY xorg.conf (which may be true with openSUSE 11.2 and above), then you could create one.
- Reboot your PC in runlevel 3, as descibed earlier, and login as a normal user
- Again, type "su" (no quotes - enter root password) to switch users to the administrator/root.
- Then type the following: Xorg -configure
- This creates an xorg.conf in the /root. Copy this file to the correct location /etc/X11/xorg.conf
- Reboot normally into a graphical session
- So, your vanilla Device section should look something like this:
Section "Device" BoardName "R420 JI" Driver "radeon" Identifier "Device" VendorName "ATI" EndSection
It may have a few other options included also. Below are some options you may want to tweak or add if they are not already present in your xorg.conf. A full list of options is available on the radeon man page.
Option "BusType" "AGP"
The value of this can be "PCI" "AGP" or "PCIE". This should be set to whatever the bus type of your card is. By default, the driver attempts to auto-dectect your bus, but sometimes it makes mistakes. In my own experience, explicitly setting my bus type improved performance dramatically. If setting it to "AGP" or "PCIE" causes problems, you can set it to "PCI" but you'll have a performance drop.
Option "AGPMode" "8"
Acceptable values are 1", "2", "4" and 8. If you have an AGP card, this should be set to the highest value your card supports unless doing so causes instability.
Note that setting AGPMode here in Xorg.conf (or under /etc/X11/xorg.conf.d/) is now (March 2013) unsupported, you will need to edit /etc/modprobe.d/99-local.conf and add the line
options radeon agpmode=4Acceptable values are "1", "2", "4" and 8. Note this will depend upon the capabilities of your card. Remember to commit the changes by running
mkinitrdafter changing this file.
Option "AccelMethod" "XAA"
This can be set to "XAA" or "EXA". XAA is an older, but more stable method. EXA is new and supposed to have better performance. You should try both and stick with whichever works best for you.
Option "EnablePageFlip" "on"
This speeds up 3D performance, but it is off by default because it doesn't always work correctly. If you have an R/RV/RS4XX or earlier card you should have it turned on unless it causes a problem.
Option "ColorTiling" "on"
Turning this on improves 3D performance. It should be on by default.
Option "AccelDFS" "on"
This is off by default on AGP cards, but on by default on other cards. Turning it on should improve performance, but it causes problems with some AGP cards.
- HCL:AMD video cards