Sorry I said I would post this solution yesterday; however, I was in the ER room dealing with multiple wasp stings (mmmmmm...steriods good
).
There really needs to be a HOWTO section for each Distro, as each Linux distro has their own little quirks, than just one, generic 'Linux Tutorials' section.
As of this writing, the latest ATI proprietary drivers are 8.16.20. ati.com offers a *.run auto-installer program as well as the *.rpm for the drivers for both XFree and xorg. Mandrake 10.2 (Limited Edition), uses the xorg *.rpm.
A couple of DO NOT's before I begin:
1. DO NOT use the *.run program provided by ATI. I expected the program to install the driver and set it up in your linux distro to automatically load the driver at each boot. This did not happen, and all it caused me were problems. After running the *.run file, my boot now does an 'init 3' instead of an 'init 5' and I get some sort of weird feedback problem with my audio driver that I both need to fix. Actually, I have seen people report issues with the *.run whether they use Mandrake/Mandriva, Redhat (see
http://www.linuxquestions.org/questions/history/359933), SuSE (see
http://www.linuxquestions.org/questions/history/337678), or debian.
2. You do not necessarily need to necessarily need to run fglrxconfig to get it configured right. This is especially true if you own a wide-screen laptop like me (Dell 8600). fglrxconfig does not configure a widescreen LCD right. So for now I am still using the xorg.conf file the Mandrake installation gave me which works fine (however, if someone knows a feature I should turn on or add in my xorg.conf file that fglrxconfig would configure, please tell and show me
).
3. The dkms thingy Mandrake has to control your ATI driver is junk. The ATI driver code that came with the distro is never compiled or loaded right on my distro. When you try and install ATI's latest driver package, the Mandrake kernel will try to update the dkms daemon thingy and may not get it right.
fglrxinfo is useful in telling if your kernel is actually using the ATI driver. For anyone that reports they are only getting 200, 500 FPS, I bet your kernel is still using the Mesa SW library. If you type 'fglrxinfo' (need to be root to do this) and you do not see 'ATI' anywhere from the output of that command, your ATI driver is not loaded.
Ok, so here are my steps. BTW, I got a lot of my ideas from
http://www.linuxquestions.org/questions/history/354985, which is over a Redhat Fedora 64 bit configuration:
1. download ATI's latest driver *rpm package.
2. get into root (ie 'su')
3. do "rpm -ivh --force fglrx*.rpm"
Now you want to be in 'init 3' for steps 4-11:
4. cd to /usr/src/fglrx-8.16.20/. This is where the code was installed under Mandrake.
(there is no true /lib/modules/ directory in Mandrake distros, unfortunately).
5. EXPERIMENTAL: in the weblink I referenced, for their 64 bit system (Fedora) they went into 'firegl_public.c' and changed:
#include "asm/ioctl32.h"
to
#include "linux/ioctl32.h"
anyone that has a 64 bit Mandrake system may want to look into this and experiment. I have a 32 bit system.
6. run 'make.sh' (you may have to do a 'chmod +w make.sh' first)
7. load driver. "modprobe fglrx.ko" did NOT work for me. I actually had to do a "insmod fglrx.ko"
8. do a 'fglrxinfo' and 'lsmod | grep fglrx' to see that the driver loaded properly.
9. Only execute 'fglrxconfig' if you know what you are doing. There are a lot of options I did not understand the benefits and drawbacks of activating them, and I have not found any documentation here or on ATI's website for this.
10. Execute 'init 5'.
11. Once you are in your graphical environment, open a terminal, goto root, and enter 'glxgears' to see your FPS. My latest run I get:
11615 frames in 5.0 seconds = 2323.000 FPS
11507 frames in 5.0 seconds = 2301.400 FPS
11587 frames in 5.0 seconds = 2317.400 FPS
for my system which is a 2.0GHz Pentium M with 128MB 9600 ATI card. I have been told by an ATI engineer that it is possible on some systems to push this FPS up to 7000.
What is left for me to FIX so that I have a normal running system again is to get Mandrake to automatically load my fglrx driver, do an 'init 5' instead of an 'init 3', and most likely re-install my sound driver. I also need to get dkms to quit trying to load the old ati drivers that are part of the Mandrake distro. I'm a little green in these areas so any advice is appreciated.
Oh, now FYI, for anyone that would like to look more into dkms, this is what I discovered:
a. when you do a first install and Mandrake trys to install the old ATI drivers that are a part of the distro, a directory is created called /var/lib/dkms/ati. If you nose around, you will discover the directory structure something like:
[root@204 fglrx-8.16.20]# cd /var/lib/dkms
[root@204 dkms]# ls
ati/ dkms_dbversion* fglrx/
[root@204 dkms]# cd ati
[root@204 ati]# ls
8.10.19/ kernel-2.6.11-6mdk-i686-up-4GB-i586@
[root@204 ati]# cd 8.10.19/
[root@204 8.10.19]# ls
2.6.11-6mdk-i686-up-4GB/ source@
[root@204 8.10.19]# ls 2.6.11-6mdk-i686-up-4GB/
dkms.conf* i586/
Note that when you install the fglrx*.rpm file from the ATI website, Mandrake
trys to install the drivers with the same directory structure in mind. However, it fails miserably. After /var/lib/dkms/fglrx is created, it will only create a 8.16.20/ underneath fglrx/ and then the source@ underneath 8.16.20/. None of the other files or directories that you see listed above are
not created, including that dkms.conf file you see that was created for the ATI driver distro package. If you are really serious in getting dkms working and controlling your graphics drivers, I'm just providing you with an FYI that Mandrake does not do the 'right thing' when installing the *.rpm ATI package from the ATI website. You will probably want to manually construct the missing directories and files underneath /var/lib/dkms/fglrx.
Hope this helps everyone!