Hi everybody.
I have VIA KT880 chipset and ATI Radeon 9600XT graphics card.
I use Debian Sarge 3.0 with self-builded kernel 2.6.12.3, Xfree86 4.3.0.1 and ATI fglrx driver 8.14.13-2. (Kernel and fglrx module were built with gcc 3.3.4).
My problem is that I cant turn on direct rendering (fglrxinfo says «MESA GLX indirect»)
This part of Xfree86.0.log describes my problem:
Code:
(II)fglrx(0): driver needs XFree86 4.3.x
(II) fglrx(0): detected XFree86 4.3.0
(II) Loading extension ATIFGLRXDRI
(II) fglrx(0): doing DRIScreenInit
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is -1, (Unknown error 999)
drmOpenDevice: open result is -1, (Unknown error 999)
drmOpenDevice: Open failed
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is -1, (Unknown error 999)
drmOpenDevice: open result is -1, (Unknown error 999)
drmOpenDevice: Open failed
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 5, (OK)
drmGetBusid returned ''
(II) fglrx(0): [drm] loaded kernel module for "fglrx" driver
(II) fglrx(0): [drm] created "fglrx" driver at busid "PCI:1:0:0"
(II) fglrx(0): [drm] added 8192 byte SAREA at 0xf88a3000
(II) fglrx(0): [drm] mapped SAREA 0xf88a3000 to 0xb7cf0000
(II) fglrx(0): [drm] framebuffer handle = 0xa0000000
(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: 8.14.13
(II) fglrx(0): Date: Jun 8 2005
(II) fglrx(0): Desc: ATI FireGL DRM kernel module
(II) fglrx(0): Kernel Module version matches driver.
(II) fglrx(0): Kernel Module Build Time Information:
(II) fglrx(0): Build-Kernel UTS_RELEASE: 2.6.12.3.050806
(II) fglrx(0): Build-Kernel MODVERSIONS: no
(II) fglrx(0): Build-Kernel __SMP__: no
(II) fglrx(0): Build-Kernel PAGE_SIZE: 0x1000
(II) fglrx(0): [drm] register handle = 0xfe200000
(EE) fglrx(0): [agp] unable to acquire AGP, error "xf86_ENODEV"
(EE) fglrx(0): cannot init AGP
(II) fglrx(0): [drm] removed 1 reserved context for kernel
(II) fglrx(0): [drm] unmapping 8192 bytes of SAREA 0xf88a3000 at 0xb7cf0000
(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): ********************************************* *
It was said in ATI Proprietary Linux Release Notes that «version 2.6 kernels require a second kernel module in addition to agpgart, which should be named similar to the manufacturer of your motherboard AGP chipset. This error message should occur if the other agp module is not loaded».
But «lsmod | grep agp\|fglrx» output looks like this:
Code:
via_agp 9792 1
agpgart 35912 2 fglrx,via_agp
fglrx 245884 0
Also, during startup klogd writes:
Code:
Aug 8 10:58:01 localhost kernel: Linux agpgart interface v0.101 (c) Dave Jones
Aug 8 10:58:01 localhost kernel: agpgart: Detected VIA KT880 chipset
Aug 8 10:58:01 localhost kernel: agpgart: AGP aperture is 128M @ 0xe0000000
----------------- skipped----------------------
Aug 8 20:40:06 localhost kernel: fglrx: module license 'Proprietary. (C) 2002 - ATI Technologies, Starnberg, GERMANY' taints kernel.
Aug 8 20:40:06 localhost kernel: [fglrx] Maximum main memory to use for locked dma buffers: 928 MBytes.
Aug 8 20:40:06 localhost kernel: [fglrx] module loaded - fglrx 8.14.13 [Jun 8 2005] on minor 0
When I type 'startx' the X starts with no DRI support and klogd writes the following:
Code:
Aug 8 20:46:22 localhost kernel: agpgart: Maximum main memory to use for agp memory: 816M
Aug 8 20:46:22 localhost kernel: agpgart: Unsupported Via chipset (device id: 0269), you might want to try agp_try_unsupported=1.
Aug 8 20:46:22 localhost kernel: agpgart: no supported devices found.
Aug 8 20:46:22 localhost kernel: [fglrx:firegl_unlock] *ERROR* Process 3770 using kernel context 0
Also, I cant start X server again after its shutdown. After secondary `startx` blank screen appears, Xfree86.0.log interrupts on the line «(II) fglrx(0): [drm] register handle = 0xfe200000» (see below, exactly before, «unable to acquire AGP»), and after pressing ACPI power button klogd reports «allocation failed» (I'm not sure, maybe this message appears any time power button pressed).
Please help me.
PS: I'm a novice with Linux, so excuse for any mistakes. And for my bad English.
PPS: Here are extracts from my fstab (for tmpfs), XF86Confiig-4 and .kernel's .config:
fstab:
Code:
tmpfs /dev/shm tmpfs defaults 0 0
XF86Confiig-4:
Code:
Section "Module"
Load "GLcore"
Load "bitmap"
Load "dbe"
Load "ddc"
Load "dri"
Load "extmod"
Load "freetype"
Load "glx"
#by Alan
SubSection "extmod"
Option "omit xfree86-dga"
EndSubSection
Load "int10"
Load "record"
Load "speedo"
Load "type1"
Load "vbe"
EndSection
Section "Device"
#by Alan
Identifier "ATI"
Driver "fglrx"
Option "VideoOverlay" "on"
Option "OpenGLOverlay" "off"
Option "UseInternalAGPGART" "yes"
BusID "PCI:1:0:0"
EndSection
Section "Screen"
Identifier "Default Screen"
Device "ATI"
#........ skipped........
EndSection
Section "DRI"
Mode 0666
EndSection
.config:
Code:
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MTRR=y
CONFIG_AGP=m
CONFIG_AGP_VIA=m
# CONFIG_FB is not set
PPPS: I forgot one more thing - changing the "UseIntrnalAGPGART" parameter has absoulutely no effect.