Hi,
a few days ago, I thought I would upgrade my x.org server from 6.7 to 6.8 seeing all the neat stuff you could do with that. But as it turns out, ATI's drivers won't play nicely with x.org 6.8, not even the newest driver ( fglrx-4.3.0-3.12.0.i386.rpm) version. I coulden't get hardware acceleration. So I decided to switch back to x.org 6.7 until ATI get's their act straight. But for some reason, I can't manage to get hardware accelaration back even with this x.org version. I got it going once, but I can't figure out what I'm missing now.
As you can read in the title, I have an ATI radeon 9600 graphics card. Further more, I have a VIA KT133 chipset on my mobo.
I have an LFS system, so I have an custom compiled kernel. At this moment, I'm running a kernel with the agpgart and the via_agp module build in to the kernel. DRI is enabled in the kernel and I have the radeon DRI module compiled as module.
I have played extensively with all kinds of settings in the kernel. I tried compiling the agp bits as modules and loading them at boot time. I tried disabling DRI in the kernel. I tried both using the internal an external agp modules (you have an option to use an internal AGP module with ATI's radeon drivers). I have MTRR enabled in the kernel.
Nothings seems to do the trick. Not even google
This is the relevent section of the /var/log/Xorg.0.log file;
Code:
(WW) fglrx(0): Cannot read colourmap from VGA. Will restore with default
(II) fglrx(0): UMM area: 0xe0500000 (size=0x07b00000)
(II) fglrx(0): driver needs XFree86 version: 4.3.x
(WW) fglrx(0): could not detect XFree86 version (query_status=-3)
(II) Loading extension ATIFGLRXDRI
(II) fglrx(0): doing DRIScreenInit
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmGetBusid returned ''
(II) fglrx(0): [drm] created "fglrx" driver at busid "PCI:1:0:0"
(II) fglrx(0): [drm] added 8192 byte SAREA at 0xd8bcf000
(II) fglrx(0): [drm] mapped SAREA 0xd8bcf000 to 0x402bc000
(II) fglrx(0): [drm] framebuffer handle = 0xe0000000
(II) fglrx(0): [drm] added 1 reserved context for kernel
(II) fglrx(0): DRIScreenInit done
(II) fglrx(0): Kernel Module Version Information:
(II) fglrx(0): Name: fglrx
(II) fglrx(0): Version: 3.12.0
(II) fglrx(0): Date: Jul 16 2004
(II) fglrx(0): Desc: ATI Fire GL DRM kernel module
(WW) fglrx(0): Kernel Module version does *not* match driver.
(EE) fglrx(0): incompatible kernel module detected - HW accelerated OpenGL will not work
(II) fglrx(0): [drm] removed 1 reserved context for kernel
(II) fglrx(0): [drm] unmapping 8192 bytes of SAREA 0xd8bcf000 at 0x402bc000
(WW) fglrx(0): ***********************************************
(WW) fglrx(0): * DRI initialization failed! *
(WW) fglrx(0): * (maybe driver kernel module missing or bad) *
(WW) fglrx(0): * 2D acceleraton available (MMIO) *
(WW) fglrx(0): * no 3D acceleration available *
(WW) fglrx(0): ********************************************* *
(II) fglrx(0): FBADPhys: 0xe0000000 FBMappedSize: 0x08000000
(**) fglrx(0): Write-combining range (0xe0000000,0x8000000)
(II) fglrx(0): FBMM initialized for area (0,0)-(1024,8191)
(II) fglrx(0): FBMM auto alloc for area (0,0)-(1024,768) (front color buffer - assumption)
(==) fglrx(0): Backing store disabled
(==) fglrx(0): Silken mouse enabled
(II) fglrx(0): Using hardware cursor (scanline 768)
(II) fglrx(0): Largest offscreen area available: 1024 x 7419
(**) Option "dpms"
(**) fglrx(0): DPMS enabled
(II) fglrx(0): Using XFree86 Acceleration Architecture (XAA)
Screen to screen bit blits
Solid filled rectangles
Solid Horizontal and Vertical Lines
Offscreen Pixmaps
Setting up tile and stipple cache:
32 128x128 slots
32 256x256 slots
16 512x512 slots
(II) fglrx(0): Acceleration enabled
(II) fglrx(0): Direct rendering disabled
This is my dmesg output (or the relevant sections of it any way)
Code:
fglrx: module license 'Proprietary. (C) 2002 - ATI Technologies, Starnberg, GERMANY' taints kernel.
[fglrx] Maximum main memory to use for locked dma buffers: 314 MBytes.
[fglrx] module loaded - fglrx 3.12.0 [Jul 16 2004] on minor 0
eth0: Setting half-duplex based on MII#1 link partner capability of 0021.
Debug: sleeping function called from invalid context at mm/slab.c:1996
in_atomic():1, irqs_disabled():0
[<c0106e77>] dump_stack+0x17/0x20
[<c011ecb4>] __might_sleep+0xb4/0xe0
[<c01442e7>] kmem_cache_alloc+0x67/0x70
[<d8c4dbe2>] __ke_alloc_wait_queue_head_struct+0x12/0x30 [fglrx]
[<d8c512e6>] firegl_setup_dev+0x126/0x1d0 [fglrx]
[<d8c4d961>] firegl_stub_open+0x111/0x1e0 [fglrx]
[<c01625b3>] chrdev_open+0x123/0x290
[<c01585b0>] dentry_open+0x140/0x230
[<c0158466>] filp_open+0x46/0x50
[<c015899b>] sys_open+0x4b/0x80
[<c010602f>] syscall_call+0x7/0xb
[fglrx:firegl_unlock] *ERROR* Process 379 using kernel context 0
eth0: no IPv6 routers present
You would think a dude like me with extensive experience could solve such a thing. But I need fellow Linux addicts to help me
Some details;
distro : Linux from scratch 5.0
kernel; unpatched 2.6.7 kernel
x server; x.org 6.7
driver; 3.12.0
graphics card; radeon 9600
CPU; AMD atlon 900 MHz
mobo; asus A7V-E
chipset; KT 133