Compile ATI drivers on M6

Hello,
have anyone been able to install the ATI propriatary graphics driver on openSUSE 11.2 M6?

Thomas

Yes I was able to get the ATI binary drivers working on opensuse 11.2 Milestone 6.

Here is the process:

I downloaded the latest driver from the AMD site ati-driver-installer-9-8-x86.x86_64.run

As root I you run the installer and choose Install 8.64 on X.Org 7.4 and later releases option

After it finishes installing if you try to run with the driver at present it does not work.

dmesg gives the following error: fglrx: Unknown symbol find_task_by_vpid

Which is in reference to git.kernel.org - linux/kernel/git/torvalds/linux-2.6.git/commit which has been removed from the 2.6.31 kernel.

Now go to /lib/modules/fglrx/build_mod and open firegl_public.c for editing.

Jump down to line 1310 and here is what the code should look like after editing starting a few lines before to give context:

#endif   
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26)  
   p = find_task_by_pid( pid );
#else
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)
   p = find_task_by_vpid( pid );
else p = pid_tash( pid, PIDTYPE_PID)l
#endif
#endif   
   if (p) 
   {

Save the changes and cd /lib/modules/fglrx/

then run ./make_install.sh

Setup the xorg.conf file and you should be good to go.

After restarting X fglrxinfo reported that everything was working.

Wow nice thanks,
I changed:
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)
To:
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31)

Since I run M7 with kernel 2.6.31. I got the driver compiled and everything was working nicely until I enabled Desktop Effects… System hanged and now I have troubles getting into X… But I think I will get it solved, too sleepy now for troubleshooting this… Will try to solve it tomorrow.

Thomas

I have tried this now with Milestone 7 and a newer ATI driver: ati-driver-installer-9-9-x86.x86_64.run

I changed the below code only slightly, did the recompile and everything worked again.

#endif   
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26)  
   p = find_task_by_pid( pid );
#else
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31)
   p = find_task_by_vpid( pid );
else p = pid_tash( pid, PIDTYPE_PID);
#endif
#endif   
   if (p) 
   {

Hi there,

Sorry if I’m being daft, but could you perhaps show “before” and "after code snippets? Or is this a case of just adding some lines after the kernel 2.26 bit?

Hi again,

I’ve modified my firegl_public.c to look like this (a few extra lines above and below what is listed above)

#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17)
rcu_read_lock();
#else
read_lock(&tasklist_lock);
#endif
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26)
p = find_task_by_pid( pid );
#else
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31)
p = find_task_by_vpid( pid );
else p = pid_tash( pid, PIDTYPE_PID);
#endif
#endif
if (p)
{
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,10)
if (p->exit_state != EXIT_ZOMBIE && p->exit_state != EXIT_DEAD)
#else
if (!(p->flags & PF_EXITING))
#endif
{
process_terminated = 0;
}
}
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17)
rcu_read_unlock();
#else
read_unlock(&tasklist_lock);
#endif
return process_terminated;
}

when I try to do the ./make_install.sh

I get the following

./make_install.sh
*** WARNING ***
Tailored kernel module for fglrx not present in your system.
You must go to /lib/modules/fglrx/build_mod subdir
and execute ‘./make.sh’ to build a fully customed kernel module.
Afterwards go to /lib/modules/fglrx and run ‘./make_install.sh’
in order to install the module into your kernel’s module repository.
(see readme.txt for more details.)

As of now you can still run your XServer in 2D, but hardware accelerated
OpenGL will not work and 2D graphics will lack performance.

failed.

I then go back into build_mod to run make first and get

./make.sh
AMD kernel module generator version 2.1
kernel includes at /usr/src/linux/include not found or incomplete
file: /usr/src/linux/include/linux/version.h

did I miss something in the original instructions?

As an aside, has anyone tried the Catalyst 9.10 prerelease that is listed in Ubuntu forums on the 'net?

The same mods work on M8 as well (used Catalyst 9.9). The issue is (apparently) the newer kernel and the changes thereof. Noit only have I got 3D working with my HD3450, but the cube is blazing fast (which is shocking, since i have only the HD3450)

Those same mods work with M8 (in fact, you could have left it at 2,6,30, which I did with M8 purely by happenstance, as I didn’t see your followup).

Have you noticed how much faster the cube is in KDE 4 with proper accleration? By the by, what does M8 use in KDE 4; compiz or Kwin?

I also get the error compiling with the make command. Any ideas? I tried installing the pkgs to make it so I can compile from sources, but a lot of them were missing.

Anyone have any idea when Catalyst 9.10 is being released (i.e. the one that is supposed to officially support 11.2 kernel)?

I hunted for the roadmap and couldn’t find it…

I know a beta version is in Ubuntu land,