Ubuntu – How to get the ATI / AMD drivers to work with any kernel above 3.2.0.x

atidrivers

How can I get my ATI / AMD drivers to work with any kernel above 3.2.0.x ?

WHAT DID WORK

Installed original AMD64 version of Ubuntu 12.04 ISO image. Burned DVD and installed which shown kernel 3.2.0-23 to begin with. Got 5.1 surround sound working. Got ATI ( Now its AMD ) video drivers installed for my Radeon HD R6870 Video card from AMD's website. fglrxinfo came up and reported as normal.

THE PROBLEM

Kernel 3.2.0.x kept locking up so I tried higher kernel versions. But ATI / AMD Drivers do not install on any kernel Above 3.2.0.x

WHAT I HAVE TRIED

I have gone over this tutorial many times ( https://help.ubuntu.com/community/BinaryDriverHowto/ATI ) and it doesn't work on ANY kernel except 3.2.0.x.

The problems I am having here are that the ATI / AMD drivers working for the 12.04 Precise with kernel 3.2.0-23 and 24, But the computer kept locking up. Although all my games would work, the lock ups were random and were constant. So I looked all over the web for 3 days trying to find an answer and the lock up issue was said to just update the kernel. So I did. Have tried many kernels. All of them .. no lock ups. BUT the Restricted AMD drivers from the AMD website will not install. And none of the OpenSource AMD drivers have EVER installed no matter what Kernel or version I tried.

EXAMPLE OUTPUT OF 3D TYPE OF ERRORS

Javax.media.opengl.GLException: glXGetConfig failed: error code GLX_NO_EXTENSION
at com.sun.opengl.impl.x11.X11GLDrawableFactory.glXGetConfig(X11GLDrawableFactory.java:651)
at com.sun.opengl.impl.x11.X11GLDrawableFactory.xvi2GLCapabilities(X11GLDrawableFactory.java:350)
at com.sun.opengl.impl.x11.X11GLDrawableFactory.chooseGraphicsConfiguration(X11GLDrawableFactory.java:174)
at javax.media.opengl.GLCanvas.chooseGraphicsConfiguration(GLCanvas.java:520)
at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:131)
at haven.HavenPanel.<init>(HavenPanel.java:68)
at haven.HavenPanel.<init>(HavenPanel.java:78)
at haven.MainFrame.<init>(MainFrame.java:182)
at haven.MainFrame.main2(MainFrame.java:306)
at haven.MainFrame.access$100(MainFrame.java:34)
at haven.MainFrame$7.run(MainFrame.java:360)
at java.lang.Thread.run(Thread.java:722)

And of course this is what fglrxinfo shows :

X Error of failed request:  BadRequest (invalid request code or no such operation)
  Major opcode of failed request:  139 (ATIFGLEXTENSION)
  Minor opcode of failed request:  66 ()
  Serial number of failed request:  13
  Current serial number in output stream:  13

EDIT : I forgot to mention that I DID look at this post over the last few days and it did not help.

Best Answer

There are two driver options that usually work well:

  • the opensource radeon driver
  • the fglrx package from the official repository

A 64-bit kernel usually gets much better support in this case.

You can also try the 12.6 beta drivers from AMD.

If you need a guide, try the Unofficial Wiki for the AMD Linux Driver.

Do not install a new driver package over an old one. Remember to uninstall the previous package(s).

Related Question