Re: Pegasos II + Radeon 9000: No DRI and wrong colours for OpenGL
On Sun, 2009-06-14 at 20:48 +0200, Johannes Geiss wrote: > > I did a little investigation of this problem and saw this: > > xorg-server-1.5.3-r6 has a library called libglx.so. This library uses > > drmOpenOnce(NULL, "pci:0001:01:08.0", ...) > > to get the graphics card. > > lspci reports > > 0001:01:08.0 VGA compatible controller: > ATI Technologies Inc Radeon RV250 If [Radeon 9000] (rev 01) > > So the PCI Bus ID seems to be correct. > > libdrm-2.4.5 has the function drmOpenOnce(). This function goes down to > drmOpen(NULL, "pci:0001:01:08.0") and > drmOpenByBusid("pci:0001:01:08.0"). > > Now drmGetBusid(fd) is called and returns "pci::01:08.0". Which is > wrong, because it differs from the original PCI Bus ID. So my graphics > card will not be used with hardware accelerated OpenGL. > > drmGetBusid() calls the kernel module drm via IOCTL > DRM_IOCTL_GET_UNIQUE. (see file drm_ioc32.c). So is it a bug in the > kernel? Yes, due to the traditional inability of userspace to deal with PCI domains != 0, the kernel DRM macro drm_get_pci_domain() in drmP.h is still hardcoded to 0. This needs to be fixed now; the problem is that just fixing the macro would break old userspace, a proper fix will need to involve DRM userspace interface versioning. -- Earthling Michel Dänzer |http://www.vmware.com Libre software enthusiast | Debian, X and DRI developer ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg
Pegasos II + Radeon 9000: No DRI and wrong colours for OpenGL
Hi Xorg-folks, I want to report a bug. I'm using Gentoo Linux (CPU: PowerPC G4) and updated my xorg-server to the version 1.5.3-r6 and now my X11 performance for OpenGL (Mesa 7.3-r1) is bad and has wrong colours (eg. glxgears). I did a little investigation of this problem and saw this: xorg-server-1.5.3-r6 has a library called libglx.so. This library uses drmOpenOnce(NULL, "pci:0001:01:08.0", ...) to get the graphics card. lspci reports 0001:01:08.0 VGA compatible controller: ATI Technologies Inc Radeon RV250 If [Radeon 9000] (rev 01) So the PCI Bus ID seems to be correct. libdrm-2.4.5 has the function drmOpenOnce(). This function goes down to drmOpen(NULL, "pci:0001:01:08.0") and drmOpenByBusid("pci:0001:01:08.0"). Now drmGetBusid(fd) is called and returns "pci::01:08.0". Which is wrong, because it differs from the original PCI Bus ID. So my graphics card will not be used with hardware accelerated OpenGL. drmGetBusid() calls the kernel module drm via IOCTL DRM_IOCTL_GET_UNIQUE. (see file drm_ioc32.c). So is it a bug in the kernel? Who is the right person to report this? Thanks for any suggestions Johannes -- --//-- //Johannes R. Geiss Zaurus, Pegasos, Amiga and C64 user \\ // PGP at http://home.arcor.de/jgeiss/pgpkey.txt --\X/- signature.asc Description: This is a digitally signed message part ___ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg