[ydl-gen] YDL 6.2 and dri

Stephen Harker sjh at adfa.edu.au
Tue May 4 11:36:16 JST 2010


As some may recall there was some discussion about lack of direct
rendering support on at least some Apple computers last year.  An
example being my iBook G4 2005 which had direct rendering under YDL
6.1 and 5.02.

To exemplify, under my current kernel (2.6.32.9) from dmesg I get:

dmesg | grep -e drm -e radeon

[drm] Initialized drm 1.1.0 20060810
[drm] radeon defaulting to userspace modesetting.
[drm] Initialized radeon 1.31.0 20080528 for 0000:00:10.0 on minor 0
[drm] Setting GART location based on new memory map
[drm] Loading R300 Microcode
platform radeon_cp.0: firmware: requesting radeon/R300_cp.bin
[drm] Num pipes: 1
[drm] writeback test succeeded in 1 usecs

While the most relevant lines from my Xorg.0.log are:

grep -e drm -e radeon -e EE Xorg.0.log

	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(II) Loading extension MIT-SCREEN-SAVER
(II) LoadModule: "radeon"
(II) Loading /usr/lib/xorg/modules/drivers//radeon_drv.so
(II) Module radeon: vendor="X.Org Foundation"
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenByBusid: Searching for BusID pci:0000:00:10.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenByBusid: drmOpenMinor returns 8
drmOpenByBusid: drmGetBusid reports pci:0000:00:10.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenByBusid: Searching for BusID pci:0000:00:10.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenByBusid: drmOpenMinor returns 8
drmOpenByBusid: drmGetBusid reports pci:0000:00:10.0
(II) [drm] DRM interface version 1.3
(II) [drm] DRM open master succeeded.
(II) RADEON(0): [drm] Using the DRM lock SAREA also for drawables.
(II) RADEON(0): [drm] framebuffer handle = 0x98000000
(II) RADEON(0): [drm] added 1 reserved context for kernel
(II) RADEON(0): [drm] installed DRM signal handler
(II) RADEON(0): [drm] register handle = 0x22000000
(II) RADEON(0): [drm] Added 32 65536 byte vertex/indirect buffers
(II) RADEON(0): [drm] Mapped 32 vertex/indirect buffers
(II) RADEON(0): [drm] dma control initialized, using IRQ 48
(II) RADEON(0): [drm] Initialized kernel GART heap manager, 5111808
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 9, (OK)
drmOpenByBusid: Searching for BusID pci:0000:00:10.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 9, (OK)
drmOpenByBusid: drmOpenMinor returns 9
drmOpenByBusid: drmGetBusid reports pci:0000:00:10.0
(EE) AIGLX error: dlopen of /usr/lib/dri/r300_dri.so failed (/usr/lib/dri/r300_dri.so: cannot open shared object file: No such file or directory)
(EE) AIGLX: reverting to software rendering

As you can see the problem appears to lie in the non-presence of
/usr/lib/dri/r300_dri.so.  A google search found that (for fedora, see
<http://forums.fedoraforum.org/showthread.php?t=187984>) this file was
part of mesa-libGL.  In the instant version of fedora this comprised:

rpm -ql mesa-libGL
/usr/lib/dri
/usr/lib/dri/i810_dri.so
/usr/lib/dri/i915_dri.so
/usr/lib/dri/i915tex_dri.so
/usr/lib/dri/i965_dri.so
/usr/lib/dri/mach64_dri.so
/usr/lib/dri/mga_dri.so
/usr/lib/dri/r128_dri.so
/usr/lib/dri/r200_dri.so
/usr/lib/dri/r300_dri.so
/usr/lib/dri/radeon_dri.so
/usr/lib/dri/savage_dri.so
/usr/lib/dri/tdfx_dri.so
/usr/lib/dri/unichrome_dri.so
/usr/lib/libGL.so.1
/usr/lib/libGL.so.1.2

However, for YDL 6.2 the equivalent comprises:

rpm -ql mesa-libGL
/usr/lib/dri
/usr/lib/dri/libdricore.so
/usr/lib/libGL.so
/usr/lib/libGL.so.1
/usr/lib/libGL.so.1.2

This suggests we either need to rebuild Mesa or to update to a newer
version.  If anyone is feeling adventurous try guides such as:
<http://www.x.org/wiki/radeonBuildHowTo>.

-- 
Stephen Harker                           s.harker at adfa.edu.au
PEMS                
UNSW at ADFA


More information about the yellowdog-general mailing list