[Hardware] Re: [Comm] [hw-video] ATI Rage Mobility DRI does work :)

Michael Shigorin mike на osdn.org.ua
Вт Май 31 14:34:38 MSD 2005


перевожу в hardware@ (бо там такому и место)

On Mon, May 30, 2005 at 05:30:48PM +0400, Sergey Vlasov wrote:
> > (II) ATI(0): [drm] register handle = 0xf4200000
> > (II) ATI(0): [dri] Visual configs initialized
> > (II) ATI(0): [dri] Block 0 base at 0xf4200400
> > (WW) ATI(0): Not enough memory for local textures, disabling DRI
> > (II) ATI(0): [drm] removed 1 reserved context for kernel
> > (II) ATI(0): [drm] unmapping 8192 bytes of SAREA 0xd8c31000 at 0xb7536000
> А сколько там видеопамяти?  Вот только что написали, что на 4M
> работать будет максимум в 800x600x16bit:
> http://permalink.gmane.org/gmane.comp.video.dri.user/4858
> http://permalink.gmane.org/gmane.comp.video.dri.user/4859

Очень на то похоже -- тоже Lifebook, тоже Rage Mobility, 
тоже 2X, но 4M.

2.6.10-wks26-up-alt5, загрузил intel_agp, agpgart, mach64;
xorg-x11-6.8.2-alt7, прописал Load'ы dri, glx.

agpgart: Detected an Intel 440BX Chipset.
agpgart: Maximum main memory to use for agp memory: 96M
agpgart: AGP aperture is 64M @ 0xf8000000
[drm] Initialized mach64 1.0.0 20020904 on minor 0: ATI Technologies Inc Rage Mobility P/M AGP 2x

(--) ATI(0): 4096 kB of SGRAM (2:1) 32-bit detected (using 4095 kB).
(WW) ATI(0): DRI static buffer allocation failed -- need at least 4608 kB video memory
(II) ATI(0): Direct rendering disabled

Соответственно в 800x600x16 (брр, оно отмасштабировалось):

[drm] Module unloaded
[drm] Initialized mach64 1.0.0 20020904 on minor 0: ATI Technologies Inc Rage Mobility P/M AGP 2x
agpgart: Found an AGP 1.0 compliant device at 0000:00:00.0.
agpgart: Putting AGP V2 device at 0000:00:00.0 into 2x mode
agpgart: Putting AGP V2 device at 0000:01:00.0 into 2x mode
[drm] descriptor ring: cpu addr 0xc8ce0000, bus addr: 0xf8000000
[drm] Forcing pseudo-DMA mode

(II) ATI(0): [drm] SAREA 2200+1208: 3408
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:01:00.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenByBusid: drmOpenMinor returns 8
drmOpenByBusid: drmGetBusid reports pci:0000:01:00.0
(II) ATI(0): [drm] DRM interface version 1.2
(II) ATI(0): [drm] created "mach64" driver at busid "pci:0000:01:00.0"
(II) ATI(0): [drm] added 8192 byte SAREA at 0xc8cd1000
(II) ATI(0): [drm] mapped SAREA 0xc8cd1000 to 0xb794c000
(II) ATI(0): [drm] framebuffer handle = 0xf5000000
(II) ATI(0): [drm] added 1 reserved context for kernel
(II) ATI(0): [drm] Will request pseudo-DMA (MMIO) mode
(==) ATI(0): [agp] Using AGP 2x Mode
(==) ATI(0): [agp] Using 8 MB AGP aperture
(II) ATI(0): [agp] Mode 0x1f000203 [AGP 0x8086/0x7190; Card 0x1002/0x4c4d]
(II) ATI(0): [agp] 8192 kB allocated with handle 0x00000001
(II) ATI(0): [agp] Using 16 kB for DMA descriptor ring
(==) ATI(0): [agp] Using 2 MB for DMA buffers
(II) ATI(0): [agp] Using 6016 kB for AGP textures
(II) ATI(0): [agp] ring handle = 0xf8000000
(II) ATI(0): [agp] Ring mapped at 0xb7948000
(II) ATI(0): [agp] vertex buffers handle = 0xf8004000
(II) ATI(0): [agp] Vertex buffers mapped at 0xb7748000
(II) ATI(0): [agp] AGP texture region handle = 0xf8204000
(II) ATI(0): [agp] AGP Texture region mapped at 0xb7168000
(II) ATI(0): [drm] register handle = 0xf4100000
(II) ATI(0): [dri] Visual configs initialized
(II) ATI(0): [dri] Block 0 base at 0xf4100400
(II) ATI(0): [drm] installed DRM signal handler
(II) ATI(0): [DRI] installation complete
(II) ATI(0): [drm] Added 128 16384 byte DMA buffers
(II) ATI(0): [drm] Mapped 128 DMA buffers at 0xb6f68000
(II) ATI(0): [drm] Installed interrupt handler, using IRQ 9
(II) ATI(0): Direct rendering enabled

...но почему-то

life:~> glxinfo|grep ^direct
libGL error: open DRM failed (Operation not permitted)
libGL error: reverting to (slow) indirect rendering
direct rendering: No

После sudo chown $USER /dev/dri/card0 поправилось;
FPS в glxgears поднялись со ~113 до ~140, правда, не знаю, 
на чём масштабирование выполняется (800x600 растянуто
на весь экран, лезть отключать лень).

(можно было дочитать это и прописать Section "DRI"...
http://dri.freedesktop.org/wiki/DriTroubleshooting)

С libGL вроде порядок:

life:~> l /usr/X11R6/lib/libGL* | cut -c60-
libGL.so.1 -> mesa_gl/libGL.so.1.2
libGL.so.1.2 -> mesa_gl/libGL.so.1.2
libGLU.so.1 -> libGLU.so.1.3
libGLU.so.1.3
libGLw.so.1 -> libGLw.so.1.0
libGLw.so.1.0
life:~> LIBGL_DEBUG=verbose glxgears
libGL: XF86DRIGetClientDriverName: 6.5.6 mach64 (screen 0)
libGL: OpenDriver: trying /usr/X11R6/lib/modules/dri/mach64_dri.so
drmOpenByBusid: Searching for BusID pci:0000:01:00.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 4, (OK)
drmOpenByBusid: drmOpenMinor returns 4
drmOpenByBusid: drmGetBusid reports pci:0000:01:00.0
libGL error: 
Can't open configuration file /etc/drirc: No such file or directory.
libGL error: 
Can't open configuration file /home/mike/.drirc: No such file or directory.

В общем, по ссылкам в цитате всё сказано. :-)

Т.к. машинка и не предполагала, то отключаю заради памяти, 
но приятно, что в Xorg уже смержили найденный перед покупкой
ноута скорее из любопытства код для Mach64 DRI. :-)

PS: проверил ppracer.  Четыре с хвостиком FPS, ездит :)))

-- 
 ---- WBR, Michael Shigorin <mike at altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/
-------------- next part --------------
z'╣ЛmjшZr··э╡г+╧╤чtж╕zz-jЖ╒∙╕Еy<╘y╙i√'╤*'Ч≤)╡('jш╚y(Ё{_=o+^╟7╛rz-jЖ╒∙╕ЕyJЕ├шiЪЫb╡ш√ыb·Лk╩Зb╔ЙФj)┘╙ща╙чЩ╚miхfz{lЪm4ГNwвЖЖwgСoз╤ж°├g╖╣╦╖


Подробная информация о списке рассылки Hardware