Florian Kulzer wrote:
On Fri, Nov 07, 2008 at 19:41:38 -0800, Jason C. Wells wrote:I'm having trouble with DRI on my Radeon 9600 Pro.(II) RADEON(0): [agp] Mode 0x1f000207 [AGP 0x1002/0x5833; Card 0x1002/0x4150](II) RADEON(0): [agp] 8192 kB allocated with handle 0x00000001 (II) RADEON(0): [agp] ring handle = 0x00000000 (EE) RADEON(0): [agp] Could not map ring (EE) RADEON(0): [agp] AGP failed to initialize. Disabling the DRI.(II) RADEON(0): [agp] You may want to make sure the agpgart kernel module is loaded before the radeon kernel module.Based on that message, I would try to change the module load order. (It does seem that agpgart gets loaded before radeon already, though.) I would shut down X and remove all the modules (as root): modprobe -r radeon drm ati_agp agpgart Check with lsmod that the modules have really been unloaded. Then load them again in different sequences, e.g.: modprobe agpgart modprobe ati_agp modprobe drm modprobe radeon or modprobe ati_agp modprobe drm modprobe radeon and test if X can be started with DRI.
I tried loading modules manually to no avail. I also looked at modules.dep which had all of the modules listed in the correct dependency order.
This motherboard is from a Shuttle ST61G4. It has an onboard ATI 9100 IGP (integrated graphics processor). I have also installed and AGP ATI 9600 Pro. There is a BIOS setting that controls the AGP aperture for the IGP. I had set that value to 0 MB since I do not use the onboard IGP. I set the AGP aperture to 128MB and now DRI works.
Apparently the linux driver needs the AGP aperture set where the Windows driver does not.
Details included for posterity. Broken: (==) RADEON(0): Using AGP 4x(II) RADEON(0): [agp] Mode 0x1f000207 [AGP 0x1002/0x5833; Card 0x1002/0x4150]
(II) RADEON(0): [agp] 8192 kB allocated with handle 0x00000001 (II) RADEON(0): [agp] ring handle = 0x00000000 (EE) RADEON(0): [agp] Could not map ring (EE) RADEON(0): [agp] AGP failed to initialize. Disabling the DRI. (II) RADEON(0): [agp] You may want to make sure the agpgart kernel module is loaded before the radeon kernel module. Fixed: (==) RADEON(0): Using AGP 4x(II) RADEON(0): [agp] Mode 0x1f000207 [AGP 0x1002/0x5833; Card 0x1002/0x4150]
(II) RADEON(0): [agp] 8192 kB allocated with handle 0x00000001 (II) RADEON(0): [agp] ring handle = 0xe0000000 (II) RADEON(0): [agp] Ring mapped at 0xb79d0000 (II) RADEON(0): [agp] ring read ptr handle = 0xe0101000 (II) RADEON(0): [agp] Ring read ptr mapped at 0xb7f96000 (II) RADEON(0): [agp] vertex/indirect buffers handle = 0xe0102000 (II) RADEON(0): [agp] Vertex/indirect buffers mapped at 0xa7706000 (II) RADEON(0): [agp] GART texture map handle = 0xe0302000 (II) RADEON(0): [agp] GART Texture map mapped at 0xa7226000 Thanks for the pointers. They got me going in the right direction. Later, Jason C. Wells