ATI
From openSUSE
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:
-
Install 8.42.3 or newest drivers
-
Install 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..}
| 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
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.
Beryl
Comments
If anyone wants to edit this or make this page look nicer, by all means go for it.
Keywords: ATI | fglrxinfo | fglrx | beryl | compiz | xgl | beryl-manager | sax2
Categories: SDB:10.0 | SDB:10.1 | SDB:10.2 | SDB:10.3 | SDB:Installation | HOWTOs | Hardware | ATI

