Ati Radeon & Kernel 2.6.x.y
Note: This HOWTO was tested and it works for me. If you'll have trouble look at these threads:
asc&start75 http://www.rage3d.com/board/forumdisplay.php?f=88 http://www.tux3d.org/viewtopic.php?p
Someone else: Save your time:
If you really want to save a whole bunch of hassle, just [[ https://support.ati.com/ics/support/default.asp?deptID
894&taskknowledge&folderID=27|download the ati graphical installer |]] and it automagically sets everything up and you dont have to do the error prone process below. Use it before you try this. I know it isn't really \"the arch way\" but it works quickly and simply w/ hardware acceleration too. The graphical installer seems to be a big sh script w/ an embeded data block that extracts itself into bunch of sh scripts and data. So if some arch package maintainer wanted to create an arch package thats similar, you could just analyze that and use it to create an arch package that does the same thing. WARNING!!!!! THE ATI GRAPHICAL INSTALLER AS NOW DOESN'T WORK WITH KERNEL >= 2.6.12!!!!!
- ATI drivers seem to work only with x.org, and not with XFree86. If you haven't switched to x.org, now is a good time. It is as easy as running the following as root:
<verbatim> pacman -S xorg mv /etc/X11/XF86Config-4 /etc/X11/xorg.conf </verbatim>
and restarting your X server.
- Ati drivers are not going to work with the stock kernel because they need to have the agp support build as a module, so, if you don't know how to build a custom kernel you can just use kernel2612-cko2-swsusp2 2.6.12-2 from the AUR:
So Download: http://aur.archlinux.org/packages/kernel2612-cko2-swsusp2/kernel2612-cko2-swsusp2.tar.gz
Copy it in
/var/abs/local/and perform the following:
<verbatim> cd /var/abs/local/ tar xfvz kernel2612-cko2-swsusp2.tar.gz cd kernel2612-cko2-swsusp2 makepkg pacman -U kernel2612-cko2-swsusp2-2.6.12-2.pkg.tar.gz </verbatim>
Now just edit your bootloader (lilo or grub) configuration file to add /boot/vmlinuz2612-cko2-swsusp2 as the default kernel to boot and restart your system, then just jump to the ati driver installation section :)
---- Alternatively, if you don't want to go through the process outlined above: http://wiki2.archlinux.org/index.php/Custom%20Kernel%20compilation%20with%20ABS%20%282.6.9%20and%20later%29
Note: If you compile your kernel using the steps on the Wiki page linked above, you will have to change the PKGBUILD (ati-drivers/PKGBUILD) so that the variable _kernel is changed to whatever your new kernel package version.
Make all lines in the config file that contain \"AGP\" and \"DRM\" be configured as modules... this is what your config file should look like with regard the video card-agp section:
<verbatim> CONFIG_AGP=m CONFIGAGPALI=m CONFIGAGPATI=m CONFIGAGPAMD=m CONFIGAGPAMD64=m CONFIGAGPINTEL=m CONFIGAGPINTEL_MCH=m CONFIGAGPNVIDIA=m CONFIGAGPSIS=m CONFIGAGPSWORKS=m CONFIGAGPVIA=m CONFIGAGPEFFICEON=m CONFIG_DRM=m CONFIGDRMTDFX=m # CONFIGDRMGAMMA is not set CONFIGDRMR128=m CONFIGDRMRADEON=m CONFIGDRMI810=m CONFIGDRMI830=m CONFIGDRMI915=m CONFIGDRMMGA=m CONFIGDRMSIS=m </verbatim>
For the agpgart to actually compile as a module framebuffer supports for intel graphic chipsets needs to be disabled, otherwise you may select em as modules:
<verbatim> CONFIGFBI810=m CONFIGFBI810_GTF=y CONFIGFBINTEL=m </verbatim>
- Now let's begin build/install ati drivers...
- Copy it in
- Perform the following:
<verbatim> cd /var/abs/local/ tar xfvz ati-drivers.tar.gz cd ati-drivers </verbatim>
- If you are NOT using kernel2612-cko2-swsusp2 from the AUR edit the PKGBUILD to change the _kernel variable as you need
- Make sure you have wget and rpmunpack installed... run pacman -S wget and/or pacman -S rpmunpack if not installed.
- Remove the old ati drivers packages if you have them installed (the old ati drivers were two packages named ati-drivers and ati-drivers-module-kernel26) running pacman -Rsc ati-drivers-module-kernel26
- Inside the
/var/abs/local/ati-drivers/directory, run makepkg to build the package, and then pacman -U ati-drivers-8.14.13-2.pkg.tar.gz
- Go into /etc/rc.conf and add fglrx to be the module load list, and remove radeon if it's in there. Reboot your computer. Alternatively, instead of editing rc.conf, after the reboot you can manually issue the command modprobe fglrx to load the module (and unload radeon if it's loaded).
- Run fglrxconfig to configure the X settings. Follow the instructions, and it will generate a file located at /etc/X11/xorg.conf. If you already have another /etc/X11/xorg.conf and you want to save it remember to do it before performing this step!!!
NOTE: with the kernel version >= 2.6.12 you need to have the xorg.conf set to:
<verbatim> Option \"UseInternalAGPGART\" \"yes\" Option \"KernelModuleParm\" \"agplock=0\" # AGP locked user pages: disabled </verbatim>
- The moment of truth! Run X, open up a terminal, and run glxinfo || grep \"direct rendering\" and if everything worked, you will get a very satisfying message displaying Direct Rendering: Yes. Another command you can run to look if everything is working is fglrxinfo
- Edit this wiki to reflect any differences or ommissions. Specifically: do any modules or such need to be added on bootup? Did it work with the stock kernel?
- Common Problems
I've removed the old ones because i think there'll be different ones with the new drivers with kernel 2.6.12...
It seems to work fine also without adding fglrx into /etc/rc.conf module load list, it should be automatically loaded when you run X.
MMGM: It also seems to work just the same without disabling AGP locked user pages, atleast on my box. Confirmation from others would be nice.
All the PKGBUILDs are just the ones made by Link Dupont modified to make 'em work with the new ati drivers.
I'm sorry for my bad english, feel free to correct anything to make this howto more comprensible... :)
NOTE: If ati-drivers and kernel2612-cko2-swsusp2 packages will have a lot of votes on the AUR probably it will be possible to install them just with a pacman -S from the community repository, so, if you like the idea just register yourself on the AUR ( http://aur.archlinux.org ) and vote for both the packages. Thank you for your attention :)
Is there anything special needed to be done if you got a PCIe interface instead of an AGP? Do you even have to bother with making AGP into modules (and reinstalling the kernel) if all you have is PCIe?
qwerty: I don't know man, let's try it and let us know :)