From the readme:
2.4 Generating a customized kernel module
-----------------------------------------
The FireGL 8700/8800 uses the performance capacity of your workstation
intensively. A precisely tailored kernel module is needed to support some
features, for example, AGP support, busmaster DMA transfers, or memory
mapping. Such a module is loaded at boot time or when the x-server starts
up and remains present for usage with the driver all the time.
Note:
If the module is missing, you do not have hardware-accelerated
3D-support and the 2D driver might abort while loading. See
the console outputs of X11 and /var/log/XFree86.0.log for results.
You are in need to start the kernel module build manually
- if you spot having no hardware 3D support (run fglrxinfo to check)
- if you have done any important system changes, e.g. a changed kernel
- if you were adviced so whilst the driver installation
The binary package provides fully working kernel modules for a few
distributions and kernel versions. So, for some cases, you don't need
to build a kernel module yourself. The installer will notify you if
installation of provided modules did succeed.
The FireGL provided kernel modules will not fit your needs, for example,
- if you have a new or customized Linux kernel, or
- if you have kernel symbols versioning enabled.
In these cases you must build the configured sources of your kernel
at /usr/src/linux - this is allowed to be a symlink.
To build a customized kernel module you need administrator privileges.
You must manually start two shell scripts to build a customized kernel
module.
Perform the following steps:
- get the matching Linux kernel source
- run "make distclean"
- setup that kernel source with the config file matching your kernel
- run "make dep" on the kernel source tree
- go to "/lib/module/fglrx/build_mod" and enter "./make.sh"
- go to "/lib/module/fglrx" and enter "./make_install.sh"
Enter /lib/module/fglrx/build_mod and enter (as root) "./make.sh".
Thus you will create a new customer-specific kernel module.
If the creation fails, look up for the reason in the
shell and in the related logfile "make.log".
Note: Ignore the following warning that may turn up in some configurations:
compiling...
/tmp/ccOWu6AI.s: Assembler messages:
/tmp/ccOWu6AI.s:9: Warning: Ignoring changed section attributes
for .modinfo
A specific combination of Linux kernel sources and C compiler triggers this
warning. Similar messages turn up if you build your own Linux kernel. This
is a widely known Linux issue that does not affect your builds.
There are some kernel sources arround that produce further warnings about
some sort of pointer conversion. You can ignore this warnings as well.
To set up a kernel module build you need Linux kernel headers that match
exactly the kernel you are running.
If your kernel is configured SMP with P-III support and agpgart enabled,
you must have a kernel source that is configured exactly the same way.
If your kernel was built by your Linux distribution and supplied as binary:
- Get the related source RPM file
- Extract the matching configuration settings contained there.
(RedHat Linux files may reside in the subdir "configs".
SuSE Linux: find the files in the SRPMs.
Latest SuSE versions will present /proc/config.gz for the running kernel.)
- Set up your kernel source with these settings:
(1) copy the config file to /usr/src/linux<your-extension>/.config
(For SuSE config.gz first apply "gunzip config.gz" at a temp location.)
(2) run "make oldconfig" for exact importing
- Run "make dependencies" ("make dep").
Note:
If you want to build multiple modules for multiple kernel configurations,
run "make distclean" after each cycle and setup the config file again.
If you cannot build the matching kernel headers
(1) build a new kernel from scratch that is optimally customized to
your machine,
(2) install the new kernel and boot it
(3) continue with setup - if the kernel runs.
Perform the final step on each customized kernel module build:
- Go to /lib/modules/fglrx
- Start ./make_install.sh
This copies the matching kernel module into the loadable modules tree of your
running kernel. The script also updates the module loader dependency list.
On machines that use identical kernels and kernel configuration the results
of the kernel module build are interchangeable. Copy the module into
/lib/modules/fglrx
and setup the new module for usage by running the script
./make_install.sh
that you can find in the same directory.
________________________________
I can't find my matching source kernel (2.4.20-9) which is the only one supporting nvidia nforce2 -- I'm up the proverbial Shi+ creak if you catch my drift. Oh well back to windows for the 3rd time. I'll try Linux some other day I guess