ATI

From openSUSE

(Redirected from Howto/ATI Driver)


The ATI drivers cannot be integrated into the openSUSE distribution due of the separate license agreement. This guide is to help you install the ATI drivers the right way. For the ATI Radeon XPress 200M, or if the instructions on this page fail, please see ATI Radeon Xpress.


Contents


The Easy Way


The easy way of installing the proprietary driver has the benefits of being easy and does not require that one recompile the kernel module when updating the kernel. Please keep in mind that many older ATI cards are supported very well by the standard free driver. If you have such a card, consider sticking with that driver.

Unfortunately, the version 8.41.7 of fglrx for 10.3 is not recommended by AMD for any non-HD cards, and is known to be broken on AGP 4th and 5th generation radeons (ie. the AGP x700, x1300, x1600, etc.)

openSUSE 10.3

You can use 1-click-install that will install the latest fgrlx version:

  • image:1-click.pngInstall 8.42.3 or newest drivers
  • image:1-click.pngInstall 8.40.0 ATI drivers (Some suggest better performance with 8.40.0, DOES NOT WORK with updated kernel)
  • Open a terminal and type "sudo aticonfig --initial". This will configure X to use the ATI driver.
  • Restart X window manager by pressing CTRL+ALT+BACKSPACE. It will take 3-20 seconds. Alternative, you can restart openSUSE.
  • Skip all steps below and start using openSUSE!

See: http://www.ati.com/online/rss/atilinuxdriver.rss?OTC-rssfeedlinux for compatibility lists.

openSUSE 10.3, 10.2, 10.1

Step 1 - Add the package repository

{For 10.3 I found the information on the link below on how to add a repository to YaST to be outdated. The Yast application is now call 'Software Repositories'

Additional useful information - the server name is www.ati.com and the directory for 10.3 is suse/10.3

Perhaps some kind soul will update this information better, I don't have the ability to put in graphical images.. Marc..}

Add the repository to YaST:

Version:
10.3
http://www2.ati.com/suse/10.3
Version:
10.2
http://www2.ati.com/suse/10.2
Version:
10.1
http://www2.ati.com/suse/sle10

Please note that above URLs are not browseable with a web browser, but only by a YUM / REPO-MD capable packager manager.

Step 2 - Install the packages

Install the two packages depending on your version by running following command in a root terminal:


Version:
10.3
zypper install x11-video-fglrxG01 ati-fglrxG01-kmp-`uname -r | awk -F"-" '{print $NF}'`
Version:
10.2
yast2 --install x11-video-fglrxG01 ati-fglrxG01-kmp-`uname -r | awk -F"-" '{print $NF}'`
Version:
10.1
yast2 --install x11-video-fglrx ati-fglrx-kmp-`uname -r | awk -F"-" '{print $NF}'`

Step 3 - SaX2

Run the following command in a root terminal:

sax2 -r

Step 4 - Restart X

Restart the X server by logging out of your desktop and logging back in; or, for the more adventurous, use the more drastic method: Ctrl+Alt+Backspace.

Step 5 - Check if it's working

Run the following command in a terminal:

glxgears

To test 3D run the following command in a terminal:

fgl_glxgears

The Hard Way


The benefit of the hard way is that you get the latest version of the driver.

Disclaimer

Thank you to those who have emailed me letting me know they were able to get the drivers working by using this tutorial. If you are having problems, send me an email I will get back to you quickly.

If you have any questions, concerns, or comments, leave me a message here.

--Nick

32-bit users

Before following this tutorial please make sure you have the following packages installed:

  • kernel-source
  • qt3
  • compat
  • compat-libstdc++
  • libstdc++
  • libstdc++-devel
  • libgcc
  • xorg-x11-libs
  • xorg-x11-devel
  • Mesa
  • Mesa-devel
  • fontconfig
  • fontconfig-devel
  • expat
  • freetype
  • freetype2
  • freetype2-devel
  • zlib
  • zlib-devel
  • gcc

Note: libdrm must be version 2.3 --StephaneZ 18:52, 11 March 2007 (UTC)

Through YaST check the version number of your Kernel-default and Kernel-source packets. Both must be the same. If they aren't, get latest kernel upgrade with YaST.

64-bit users

Before following this tutorial please make sure you have the following 32-bit packages, as well as the 64-bit counterparts of the packages listed above in the 32-bit users section installed:

  • kernel-source
  • compat-32bit
  • qt3-32bit
  • libstdc++
  • libgcc
  • xorg-x11-libs-32bit
  • xorg-x11-devel-32bit
  • Mesa-32bit
  • Mesa-devel-32bit
  • fontconfig-32bit
  • expat-32bit
  • freetype2-32bit
  • zlib-32bit
  • gcc

Note: libdrm must be version 2.3 --StephaneZ 18:52, 11 March 2007 (UTC)

Optional - Install Xorg 7.2 Final

If you have openSUSE 10.2 or if you want to upgrade your X version to 7.2 follow these steps and then follow the regular install steps 4.1-5.

openSUSE 10.2 ships with Xorg 7.2 RC2. You can leave it as RC2 and be fine, but most people would like to have the final release. So without further ado here is how to get the final release.

Note: The newest ATI driver does not support Xorg 7.2. It only supports 7.1.1 and below. (only 8.35.x or lesser)

Note: Xorg 7.2 available ATI driver is already available, 8.41.7 (download) for HD 2xxx cards, and 8.40.4 (download) for other cards (include (Mobility) FireGL, tested on my laptop). --Divinespear 14:55, 10 October 2007 (UTC)

WARNING: 8.41.7 driver will trouble with old cards. see note on Easy way. --Divinespear 14:59, 10 October 2007 (UTC)


Supplemental Note: The newest version of the driver (at least for the 64-bit driver) does not appear on the main ATI Linux driver page (http://ati.amd.com/support/drivers/linux64/linux64-firegl.html). The latest release can be found at the 'previous releases' page: http://ati.amd.com/support/drivers/linux64/radeonprevious-linux64.html. As of June 15, 2007, the May driver was the latest posted, and the Installation Instructions accompanying it say that it should work with "XOrg 6.7, 6.8, 6.9, 7.0 7.1 or 7.2;". However, this paragraph's contributor has yet to get it to work.

via YaST

In YaST just add this Repository to the Installation Sources.

   type: http (if this doesn't work change it to ftp)
   server: ftp.skynet.be
   directory: /pub/software.opensuse.org/xorg72/openSUSE_10.2/

Now open up Install Software and choose Install from Source and select the newly added source. Update everything in blue. Or just update the Xorg stuff.

via Zypper

Step 1 - Add Source
# zypper service-add http://ftp.skynet.be/pub/software.opensuse.org/xorg72/openSUSE_10.2/ Xorg72
Determining http://ftp.skynet.be/pub/software.opensuse.org/xorg72/openSUSE_10.2/ source type...
http://ftp.skynet.be/pub/software.opensuse.org/xorg72/openSUSE_10.2/ is type YUM
Added Installation Sources:
[x]* Xorg72 (http://ftp.skynet.be/pub/software.opensuse.org/xorg72/openSUSE_10.2/)
Step 2 - Refresh Sources
# zypper refresh
...
...
...
Refreshing Xorg72
URI: http://ftp.skynet.be/pub/software.opensuse.org/xorg72/openSUSE_10.2/
DONE
...
...
...
Step 3 - Update System

Note: This will update all system packages that have available updates

# zypper update --type=package --no-confirm --skip-interactive
[walk to [1] and get a coffee and walk back ]

Note: As of 5/5/2007, the official ATI drivers do not support Xorg version 7.2 and up (driver version 8.36.5) (source?) Change log indicates support as of 8.33.6

Note: This will also provide easy access to the required libdrm version 2.3 mentioned above. --Ginnsu 01:39, 21 March 2007 (UTC)

Recommended - Prepare the Kernel for the new drivers

This step is not necessary, but there is no harm in doing so. If you have tried installing ATI drivers before make sure you follow these steps before you follow steps 4.1-5.

Open up the console in X and execute the following commands:

   # su
   password
   # cd /usr/src/linux
   # make mrproper
   # make cloneconfig
   # make modules_prepare
   # make clean

If you have previously tried installing drivers before, follow the following command, if not, move on to steps 4.1-5.

Remove previous drivers properly by executing the command:

   # rpm -e $(rpm -qa '*fglrx*')

Now move on to Steps 4.1-5

Installation - Get and Install ATI Drivers

At this point, you can use the YUM repository at www2.ati.com like this:

 YaST -> Software -> Change installation Source -> Add
 Protocol: http
 Server Name: : www2.ati.com
 Directory on Server: suse/10.2

to add the ATI http server as additional installation source. Now use

 YaST -> Software -> Install and Delete Software

to install the ATI/fglrx driver. Select the following packages:

 x11-video-fglrxG01
 ati-fglrxG01-kmp-<kernel-flavor>

<kernel-flavor> depends on your installed kernel. Check with "uname -r" for installed default/smp/bigsmp kernel. Use "sax2 -r" for X.Org configuration.

OR

You can continue with the following instructions for manual driver package generation and installation...

Step 1 - Acquire the latest ATI driver

Go to ATI's website and download the installer -- Latest as of July 23, 2007 -- 8.39.4

NOTE: Latest and all previous drivers for 32-bit Linux may be found at this ATI website page.

Step 2 - Generate Distribution Specific Driver Package

You may want to use Sax2 to create default xorg.conf by executing the command:

   # sax2 -a

Run the installer using the console as root.

   # sh ati-driver-installer-8.37.6-x86.x86_64.run --listpkg

or you can do the lazy method

   # sh ati*.run --listpkg

This will list the following distributions from which you can build a driver:

   SuSE/NLD9-IA32
   SuSE/SLES9-IA32
   SuSE/SUSE91-IA32
   SuSE/NLD9-AMD64
   SuSE/SLES9-AMD64
   SuSE/SUSE91-AMD64
   SuSE/SUSE100-IA32
   SuSE/SUSE92-IA32
   SuSE/SUSE93-IA32
   SuSE/SUSE100-AMD64
   SuSE/SUSE92-AMD64
   SuSE/SUSE93-AMD64
   SuSE/SLED10-IA32
   SuSE/SLES10-IA32
   SuSE/SUSE101-IA32
   SuSE/SLED10-AMD64
   SuSE/SLES10-AMD64
   SuSE/SUSE101-AMD64
   SuSE/SUSE102-IA32
   SuSE/SUSE102-AMD64
   SuSE/SUSE103-IA32
   SuSE/SUSE103-AMD64

Now run the following command adding your distribution at the end:

   # sh ati*.run --buildpkg SuSE/SUSE103-IA32

And for 64-bit run:

   # sh ati*.run --buildpkg SuSE/SUSE103-AMD64

The ATI Driver Installer made a driver package for your system which is now located in:

   /usr/src/packages/RPMS/i386

Or if you have a 64-bit processor it's located here.

   /usr/src/packages/RPMS/x86_64

Step 3 - Install the driver package

If you are in runlevel 5, go to runlevel 3 by typing the following command as root in one of the consoles (which you can access by pressing Ctrl-Alt-F1 [F1 up to F6]) or you can run init 3 from the console in X.

Still in the console as root type in:

   # init 3

This will close X and bring you back to TTY 1

Login and go to the directory containing the drivers package we just made.

   # cd /usr/src/packages/RPMS/i386

Or if you have a 64-bit processor it's located here.

   # cd /usr/src/packages/RPMS/x86_64

Install the driver package

   # rpm -Uvh fgl*.rpm

After the install is finished, you need to launch the aticonfig utility

   # ldconfig
   # aticonfig --initial --input=/etc/X11/xorg.conf

Note: if you have attempted before to install any ATI drivers the rpm remove command will not always remove the install files from the above directories. In which case you must manual remove them or enter the full filename otherwise you will encounter lib errors with conflicting files.. --davetharrison 10:44, 25 April 2007 (GMT)

Driver is installed, now to step 4.

Step 4 - Configuring the newly installed ATI driver

After the driver has been installed it now needs to be configured. Run this command after you have installed the driver.

   # sax2 -r -m 0=fglrx

This forces sax2 to use the fglrx driver. Setup your resolution and save and exit

Attention: If you have ati radeon x1650 then you may want to skip previous command because sax2 doesn't make correct settings. You should run sax -a before installing the driver and after installing driver just run following command:

   # aticonfig --initial input=/etc/x11/xorg.conf

And after that you should modify xorg.conf by yourself.

Attention: If sax2 goes to a blank screen then try the below method, if that doesn't work, follow the the steps from the Troubleshooting section.

Attention:

Latest ATI drivers have problems with some x1000 cards (x1400, x1600, x1600 pro):

If sax stops, when loading the driver, and you can find something like this in /var/log/SaX.log:

   (EE) fglrx(0): PreInitDAL failed
   (EE) fglrx(0): PreInit failed

then you should disable framebuffer in the console.

edit /boot/grub/menu.lst and remove the vga=xxx statement from the kernel line.

See https://bugzilla.novell.com/show_bug.cgi?id=222993

sax2 will start it's configuration program in X. You can do more tweaking here, but this is your option.

Disable Composite Extentions

Enabling Composite extensions disables ATI’s driver support for DRI and 3D acceleration in some cases.

Attention: If you plan on using the Beryl write up later in this tutorial do not follow this step.

Resolution: To disable the Composite extension, edit/add the following lines to the end of /etc/X11/xorg.conf file:

   Section "Extensions"
        Option "Composite" "false"
   EndSection

Note: Apparently the default is Enabled, so removing the line to disable Composite will not work. The setting needs to be explicitly set to false.

Other important Settings in the xorg.conf

For best and most stable working fglrx driver set the following options to Section "Device" in the xorg.conf:

   Option      "BlockSignalsOnLock" "on"
   Option      "KernelModuleParm" "locked-userpages=0"
   Option      "OpenGLOverlay" "off"
   Option      "UseFastTLS" "2"
   Option      "UseInternalAGPGART" "no"
   Option      "VideoOverlay" "on" # setting this to be "off" may fix tty switch problems?
   Option      "mtrr" "off"
   Option      "no_accel" "no"
   Option      "no_dri" "no"
   Option      "EnablePrivateBackZ" "no"
   Option      "backingstore" "true"
   

The option UseFastTLS "2" is an important parameter. After installation of fglrx it is a good idea to run glxgears for about 5 minutes and switch to console 10 (Strg-Alt F10) after that. If you see any messages about fglrx and Error in kernel context 0 on console 10 the value of "2" should be of help. Initially this is adjusted to "0" - what is apparently risky. My experience stems from a Radeon 9600XT.

Note If you have ati radeon x1650 pro then you may want to use following option also:

   Option      "TexturedVideo" "off" 

Atleast on openSuse 10.3 that option fixed some video rendering problems and system freeze problems - at least my system is still alive and 3D works :)

Step 5 - Reboot / kill fglrx and restart X

If you want to see whether your work was successful so far you have to ensure that no instance of an old fglrx driver is still running. Therefore you should either reboot, or, even faster than that, simply unload any currently running instance of fglrx:

 # lsmod | grep fglrx

if this prints any output you should do a rmmod fglrx in order to remove the old module. Then you can start X11 again; the latest existing module will be loaded, the latest configuration from xorg.conf will be read in.

If you cannot unload the module for whatever reason, you can reboot

 # reboot

and after applying either of the two measures you ought to have 3D functional.

Testing


To make sure you are running the ATI drivers in 3D and not MESA run this command in the console in X.

   glxinfo

It should read like this:

   quiksilver:~> glxinfo
   name of display: :0.0
   display: :0  screen: 0
   direct rendering: Yes
   server glx vendor string: SGI
   server glx version string: 1.2
   server glx extensions:
       GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating,
       GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_OML_swap_method,
       GLX_SGI_make_current_read, GLX_SGIS_multisample, GLX_SGIX_hyperpipe,
       GLX_SGIX_swap_barrier, GLX_SGIX_fbconfig, GLX_MESA_copy_sub_buffer
   client glx vendor string: ATI
   client glx version string: 1.3
   client glx extensions:
       GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context,
       GLX_ARB_get_proc_address, GLX_SGI_video_sync, GLX_ARB_multisample,
       GLX_ATI_pixel_format_float, GLX_ATI_render_texture
   GLX extensions:
       GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context,
       GLX_ARB_multisample
   OpenGL vendor string: ATI Technologies Inc.
   OpenGL renderer string: RADEON X850 PRO Generic
   OpenGL version string: 2.0.6286 (8.33.6)
   OpenGL extensions:
       GL_ARB_multitexture, GL_EXT_texture_env_add, GL_EXT_compiled_vertex_array,
       GL_S3_s3tc, GL_ARB_depth_texture, GL_ARB_fragment_program,
       GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader,
       GL_ARB_multisample, GL_ARB_occlusion_query, GL_ARB_point_parameters,
       GL_ARB_point_sprite, GL_ARB_shader_objects, GL_ARB_shading_language_100,
       GL_ARB_shadow, GL_ARB_shadow_ambient, GL_ARB_texture_border_clamp,
       GL_ARB_texture_compression, GL_ARB_texture_cube_map,
       GL_ARB_texture_env_add, GL_ARB_texture_env_combine,
       GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3,
       GL_ARB_texture_float, GL_ARB_texture_mirrored_repeat,
       GL_ARB_texture_rectangle, GL_ARB_transpose_matrix, GL_ARB_vertex_blend,
       GL_ARB_vertex_buffer_object, GL_ARB_pixel_buffer_object,
       GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_window_pos,
       GL_ARB_draw_buffers, GL_ATI_draw_buffers, GL_ATI_element_array,
       GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer,
       GL_ATI_separate_stencil, GL_ATI_texture_compression_3dc,
       GL_ATI_texture_env_combine3, GL_ATI_texture_float,
       GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object,
       GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams,
       GL_ATIX_texture_env_combine3, GL_ATIX_texture_env_route,
       GL_ATIX_vertex_shader_output_point_size, GL_EXT_abgr, GL_EXT_bgra,
       GL_EXT_blend_color, GL_EXT_blend_func_separate, GL_EXT_blend_minmax,
       GL_EXT_blend_subtract, GL_EXT_clip_volume_hint,
       GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_framebuffer_object,
       GL_EXT_multi_draw_arrays, GL_EXT_packed_pixels, GL_EXT_point_parameters,
       GL_EXT_rescale_normal, GL_EXT_secondary_color,
       GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, GL_EXT_stencil_wrap,
       GL_EXT_texgen_reflection, GL_EXT_texture3D,
       GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map,
       GL_EXT_texture_edge_clamp, GL_EXT_texture_env_combine,
       GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic,
       GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp,
       GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_vertex_array,
       GL_EXT_vertex_shader, GL_HP_occlusion_test, GL_NV_blend_square,
       GL_NV_occlusion_query, GL_NV_texgen_reflection, GL_SGI_color_matrix,
       GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp,
       GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
   glu version: 1.3
   glu extensions:
       GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess
      visual  x  bf lv rg d st colorbuffer ax dp st accumbuffer  ms  cav
    id dep cl sp sz l  ci b ro  r  g  b  a bf th cl  r  g  b  a ns b eat
   ----------------------------------------------------------------------
   0x23 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x24 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x25 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x26 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x27 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  1 0 None
   0x28 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  1 0 None
   0x29 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  1 0 None
   0x2a 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  1 0 None
   0x2b 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x2c 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x2d 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x2e 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x2f 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  2 1 None
   0x30 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  2 1 None
   0x31 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  2 1 None
   0x32 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  2 1 None
   0x33 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x34 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x35 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x36 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x37 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  4 1 None
   0x38 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  4 1 None
   0x39 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  4 1 None
   0x3a 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  4 1 None
   0x3b 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x3c 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x3d 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x3e 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x3f 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  6 1 None
   0x40 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  6 1 None
   0x41 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  6 1 None
   0x42 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  6 1 None
   0x43 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x44 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x45 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x46 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x47 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  1 0 None
   0x48 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  1 0 None
   0x49 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  1 0 None
   0x4a 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  1 0 None
   0x4b 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x4c 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x4d 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x4e 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x4f 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  2 1 None
   0x50 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  2 1 None
   0x51 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  2 1 None
   0x52 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  2 1 None
   0x53 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x54 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x55 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x56 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x57 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  4 1 None
   0x58 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  4 1 None
   0x59 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  4 1 None
   0x5a 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  4 1 None
   0x5b 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x5c 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  1 0 None
   0x5d 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x5e 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  0 16 16 16 16  1 0 None
   0x5f 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  6 1 None
   0x60 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  6 1 None
   0x61 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  6 1 None
   0x62 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  6 1 None

Notice how it says:

  OpenGL vendor string: ATI Technologies Inc.
  OpenGL renderer string: RADEON X850 PRO Generic
  OpenGL version string: 2.0.6286 (8.33.6)

And not:

  OpenGL vendor string: Mesa project: www.mesa3d.org
  OpenGL renderer string: Mesa GLX Indirect
  OpenGL version string: 1.2 (1.5 Mesa 6.5.1)

That is the proof that you are running in 3D mode.

If your OpenGL vendor string read: Mesa project... Follow the Troubleshooting steps. If you however, did get ATI in the string, there are some more tests for you below.

Another command to check is:

   fglrxinfo

To test 3D run:

   fgl_glxgears

Here are the results of my test:

   quiksilver:~> fgl_glxgears
   Using GLX_SGIX_pbuffer
   4217 frames in 6.0 seconds = 702.833 FPS
   4465 frames in 5.0 seconds = 893.000 FPS
   4705 frames in 5.0 seconds = 941.000 FPS
   5775 frames in 5.0 seconds = 1155.000 FPS
   6706 frames in 5.0 seconds = 1341.200 FPS
   6443 frames in 5.0 seconds = 1288.600 FPS
   7914 frames in 5.0 seconds = 1582.800 FPS
   6078 frames in 5.0 seconds = 1215.600 FPS
   6561 frames in 6.0 seconds = 1093.500 FPS

Congratulations you have now installed the drivers and are running in 3D! Follow the Troubleshooting steps below if you have not succeeded.

With the latest drivers from ATI (8.42.3 of November 21st, 2007) fgl_glxgears will not work initially. The reason for this stems from the fact that there are two versions of libGL.so.1.2 installed, one from fglrx that goes to /usr/X11R6/lib and one from Mesa that resides in /usr/lib. This problem can be solved as follows: Switch to runlevel 3 (init 3), move to /usr/lib, delete libGL.so.1.2 (only this one!) and create a softlink to the library from fglrx: ln -s /usr/X11R6/lib/libGL.so.1.2 /usr/lib/libGL.so.1.2. After that, fgl_glxgears should work.

Troubleshooting


If sax2 freezes or goes blank, or you got Mesa in the OpenGL vendor string follow these steps:

Ensure you have upgraded to libdrm version 2.3 --StephaneZ 18:52, 11 March 2007 (UTC)


First of all check your sax log located in /var/log/SaX.log to see what errors happened that incurred a black screen of death.

Also look in the Xorg log files for errors concerning the fglrx module in /var/log/Xorg.0.log

    >cat /var/log/Xorg.0.log | grep "(EE)"

Troubleshooting - Step 1

Get into runlevel 3 and run the following:

   # cd /usr/src/linux
   # make mrproper
   # make cloneconfig
   # make modules_prepare
   # make clean

Remove previous drivers properly by executing the command:

   # rpm -e $(rpm -qa | grep fglrx)

Troubleshooting - Step 2

Reinstall the driver again running:

   # rpm -Uvh --force fgl*.rpm

Troubleshooting - Step 3

Use ldconfig and aticonfig to setup xorg.conf by running:

   # ldconfig
   # aticonfig --initial --input=/etc/X11/xorg.conf

And then check Other important Settings in the xorg.conf

After your run these two commands reboot back into Runlevel 3. You can accomplish this from the boot menu by typing init 3 after the command: prompt

Troubleshooting - Step 4

Now we need to ensure the kernel modules are in place: at the command prompt type:

   # fglrx-kernel-build.sh

Followed by:

   # sax2 -r -m 0=fglrx -b /usr/share/doc/packages/fglrx/sax2-profile

If that didn't work for you, use this:

   # sax2 -r -m 0=fglrx

Attention: If sax2 is still causing blank screens and lockups update sax2 to the latest version from the repository below and then try to run sax2 again.

If sax2 fails when loading screen or opening test-screen, and you have "PreInitDAL failed" in the sax.log file, then check PreInitDAL failed Problem

Note: You may need to reboot for changes to take effect.

   type: http
   server: ftp-linux.cc.gatech.edu
   directory: /pub/suse/suse/update/10.2

Reboot the machine and hopefully your back on track. Check by using the Testing section of this tuturial.

Troubleshooting - More

More ATI driver troubleshooting steps taken from the removed ATI Driver page:

--Nick 21:30, 12 April 2007

3D will not work, even though fglrx is being loaded

Symptoms: When starting the test server in sax2, it crashes and the log contains Error: No screens found

This problem is caused by an incompatibility between the OSS Radeon driver and fglrx. Run:

lsmod | grep radeon

followed by

lsmod | grep fglrx

If both kernel modules are loaded, you'll need to remove the radeon module first with

#modprobe -r radeon

Then, reboot your system.

3D will not work for non-privileged user but works for root

The problem happened to me with fglrx 8.36.5-1.i386 fresh SUSE10.2 installation on a ATI Radeon X1300

For bash users:

LIBGL_DEBUG=verbose glxinfo

look for error like

undefined symbol: __glXFindDRIScreen

Remove the libGL.so* files from /usr/lib and replace them by sym links from /usr/X11R6/lib

ln -s /usr/X11R6/lib/libGL.so libGL.so
ln -s /usr/X11R6/lib/libGL.so.1 libGL.so.1
ln -s /usr/X11R6/lib/libGL.so.1.2 libGL.so.1.2

You might have to enable POSIX shared memory also.

[fglrx] API ERROR: could not register entrypoint for...

Download http://www.ground-impact.com/libGL.so.1.2

Replace the original libGL.so.1.2 in /usr/X11R6/lib

[fgl_glxgears] Reports "Permission denied" when running as non-privileged user

Issue: The following output is generated when running as non-privileged user:

# fgl_glxgears
Using GLX_SGIX_pbuffer
FGLTexMgr: open of shared memory object failed (Permission denied)
__FGLTexMgrCreateObject: __FGLTexMgrSHMmalloc failed!!!
FGLTexMgr: open of shared memory object failed (Permission denied)
__FGLTexMgrCreateObject: __FGLTexMgrSHMmalloc failed!!!
FGLTexMgr: open of shared memory object failed (Permission denied)
__FGLTexMgrCreateObject: __FGLTexMgrSHMmalloc failed!!!
FGLTexMgr: open of shared memory object failed (Permission denied)
__FGLTexMgrCreateObject: __FGLTexMgrSHMmalloc failed!!!
FGLTexMgr: open of shared memory object failed (Permission denied)
__FGLTexMgrCreateObject: __FGLTexMgrSHMmalloc failed!!!
FGLTexMgr: open of shared memory object failed (Permission denied)
__FGLTexMgrCreateObject: __FGLTexMgrSHMmalloc failed!!!
FGLTexMgr: open of shared memory object failed (Permission denied)
...

Resolution: Enable POSIX shared memory.

Try adding the following to /etc/fstab:

tmpfs                /dev/shm             tmpfs      defaults              0 0

Then mount is using:

mount /dev/shm

Note: This line may appear different then the other lines, but is in the right order.

--StephaneZ 18:33, 30 December 2006 (UTC)

Video Output Driver Xv Fails to play Video

There are a few causes of this ranging from ATI's driver to running Xgl vice Xorg

Solution: use the Video Output driver gl2.

Mplayer:
mplayer -vo gl2 <file>
GMplayer:
echo "vo_driver = \"gl2\"" >> .mplayer/gui.conf
Xine:
echo "video.driver:opengl" >> .xine/config
AIGLX error __driCreateNewScreen

ATI's Driver does not support AIGLX (unless you have an older ATI card pre-r300) at this time so stick to Xorg or Xgl. This will be removed once ATI decides to start supporting it.

If you get a error in Xorg.0.log that looks like

(EE) AIGLX error: dlsym for __driCreateNewScreen_20050727 failed (/usr/lib/dri/fglrx_dri.so: undefined symbol: __driCreateNewScreen_20050727)
(EE) AIGLX: reverting to software rendering

The solution is to type this in /etc/X11/xorg.conf

Section "ServerFlags"
   Option "AIGLX" "off"
EndSection

Source

cp: missing destination file operand

When you run:

./ati-driver-installer-8.xx.xx-i386.run –buildpkg SuSE/SUSE100-IA32

you may get a message starting with:

cp: missing destination file operand after

You need to set LC_ALL=C before the command to solve the problem

# LC_ALL=C ./ati-driver-installer-8.xx.xx-i386.run –buildpkg SuSE/SUSE100-IA32


White screen after login

Be sure that you have PCI: prepended to the BusID string in /etc/X11/xorg.conf. For example:

Section "Device"
       Identifier  "Device[0]"
       Driver      "fglrx"
       BusID       "PCI:1:0:0"
...

Note: This issue has been fixed with release 8.455.2, build date February 1, 2008.

2D Slow

If you don't use compiz, but your system is sluggish (e.g when loading pages in Firefox X maxes out your CPU) try adding Option "XaaNoOffscreenPixmaps" in /etc/X11/xorg.conf. For example: For example:

Section "Device"
       Identifier  "Device[0]"
       Driver      "fglrx"
       BusID       "PCI:1:0:0"
       Option      "XaaNoOffscreenPixmaps"
...

ATI + Beryl + XGL + openSUSE 10.2

Ok I thought I'd share how to get Beryl to work with ATI video cards.

Note: Ensure you have followed, completed and tested the steps above prior to completing this section.

Step 1 - Installing Beryl

In YaST just add this Repository to the Installation Sources.

   type: http (if this doesn't work change it to ftp)
   server: ftp.skynet.be
   directory: /pub/software.opensuse.org/X11:/XGL/openSUSE_10.2/

Install the snapshots of the following:

   aquamarine-snapshot
   beryl-core-snapshot
   beryl-manager-snapshot
   beryl-plugins-snapshot
   beryl-settings-snapshot
   beryl-vidcap-snapshot
   emerald-snapshot
   emerald-themes-snapshot

Additionally you must remove all compiz packages ignoring the dependency issues with XGL

Step 2 - Configuration

Users using dual displays need to add "Xinerama" to your Xorg configuration in order to get Beryl to work or to fix a system running like molasses.

Open your xorg.conf which is located in /etc/X11/ and add the following flag:

   Section "ServerLayout"
     Option	    "Xinerama" "on"
   EndSection

Run the following command (as user, not root) to start beryl-manager

   > beryl-manager

This will load a Ruby looking icon into the task manager. Right Click on it and under Advanced beryl options make sure the following are checked:

   Composite Overlay Window -> "Don't use COW" or "use COW" or "Automatic" (check which one works best)
   Rendering platform -> Force XGL
   Binding -> XGL Binding
   Rendering -> XGL Rendering

Now add Beryl to KDE

Another composite manager is already running

Most likely KDE is running its own composite manager effects (using kompmgr), and Beryl therefore can't run. To disable KDE's window effects, open up the control center and disable the translucency effects:

   K Menu -> Configure Desktop (Personal Settings). Then go to Desktop -> Window Behaviour. 

Go to the last tab, "Translucency", and uncheck the "Use Translucency/shadows" box. Now you can fire up beryl-manager again, and everything should run just fine.

Making Beryl start automatically

  • If Using KDE:

Simply type (as user, not root):

    ln -s /usr/bin/beryl-manager ~/.kde/Autostart/beryl-manager
    ln -s /usr/bin/beryl ~/.kde/Autostart/beryl
  • If using GNOME:

Go to GNOME's Control Center -> Sessions. Go to the last tab, "Startup Programs". Over there, add the following two to the list:

   beryl-manager
   beryl

Step 3 - Enable XGL and Reboot

From YaST go to System and run the sysconfig Editor.

   Sysconfig Editor -> Desktop -> Display Manager -> DISPLAYMANAGER_XSERVER.

Change the XSERVER from Xorg to Xgl After you do this click finish and reboot or you can just open the console as root and run:

   # rcxdm restart

or if you are using gdm

   # rcgdm restart

Once you are back in X, Beryl should have automatically loaded and you should see the Ruby looking icon in the taskbar. Right Click on it and go to Select Window Manager and click on Beryl. You should see the Beryl animation which will indicate Beryl is working.

If you weren't able to get beryl to work please look at the beryl page on this site or contact me here.

--Nick

Additional References

For GNOME with XGL users:

If you have problems with X Server after gdm loaded, and you received this message "X Server is already running...", you have to modify /etc/opt/gnome/gdm/custom.conf file: look for the following:


[daemon]

GdmXserverTimeout=30 #You have to insert or modity this to 30


[servers]

0=inactive #insert or modify 0 to inactive

1=Xgl #insert or modify 1 to Xgl


[server-Standard] #modify Standard server settings like this:

name=Xgl

command=/usr/bin/Xgl :1 -ac -accel glx=pbuffer -accel xv=pbuffer

chooser=false

handled=true

flexible=true

priority=0


--taril


More Installation Help


If you feel there isn't enough guidance here; go fly a kite, and then view ATI's list of help.


The Unofficial Wiki for the ATI Linux Driver http://wiki.cchtml.com

A GREAT guide (2007-04-20): http://linux.wordpress.com/2007/04/20/opensuse-102-amdati-drivers-installation/

New official ATI Installer instructions (March 28, 2007) https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/linux_8.35.5-inst.html

For official instructions (maintained by SUSE) to install and configure the ATI driver on (open)SUSE consult ATI Installer HOWTO.

After installing the rpm, see the README.SUSE file in /usr/share/doc/packages/fglrx/

Reporting Bugs


A good practice to help ATI evolve and shape the driver more to our needs.

ATi Linux Platform Bugs

Beryl


Beryl

Comments

If anyone wants to edit this or make this page look nicer, by all means go for it.

Retrieved from "http://en.opensuse.org/ATI"