PDA

View Full Version : Double buffering fail on r500 dri


TechMage89
08-18-2008, 01:45 AM
I have just reinstalled Arch Linux, and finally got my driver stack rebuilt using the latest sources and PKGBUILDs, and my 3d does not work.

Here's what happens. I get this for my Xorg log:


(II) RADEONHD: version 1.2.1, built from git branch master, commit da7b9e97 + changes

(II) Primary Device is: PCI 01@00:00:0
(II) resource ranges after xf86ClaimFixedResources() call:
[0] -1 0 0xffffffff - 0xffffffff (0x1) MX[B]
[1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[B]
[2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[B]
[3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[B]
[4] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[B]
[5] -1 0 0x00000000 - 0x00000000 (0x1) IX[B]
(II) resource ranges after probing:
[0] -1 0 0xffffffff - 0xffffffff (0x1) MX[B]
[1] -1 0 0x000f0000 - 0x000fffff (0x10000) MX[B]
[2] -1 0 0x000c0000 - 0x000effff (0x30000) MX[B]
[3] -1 0 0x00000000 - 0x0009ffff (0xa0000) MX[B]
[4] 0 0 0x000a0000 - 0x000affff (0x10000) MS[B]
[5] 0 0 0x000b0000 - 0x000b7fff (0x8000) MS[B]
[6] 0 0 0x000b8000 - 0x000bffff (0x8000) MS[B]
[7] -1 0 0x0000ffff - 0x0000ffff (0x1) IX[B]
[8] -1 0 0x00000000 - 0x00000000 (0x1) IX[B]
[9] 0 0 0x000003b0 - 0x000003bb (0xc) IS[B]
[10] 0 0 0x000003c0 - 0x000003df (0x20) IS[B]
(II) Setting vga for screen 0.
(**) RADEONHD(0): Depth 24, (--) framebuffer bpp 32
(**) RADEONHD(0): Option "AccelMethod" "exa"
(**) RADEONHD(0): Option "DRI" "true"
(**) RADEONHD(0): Selected EXA 2D acceleration.
(II) RADEONHD(0): Unknown card detected: 0x71C0:0x174B:0x0880.
If - and only if - your card does not work or does not work optimally
please contact radeonhd@opensuse.org to help rectify this.
Use the subject: 0x71C0:0x174B:0x0880: <name of board>
and *please* describe the problems you are seeing
in your message.
(--) RADEONHD(0): Detected an RV530 on an unidentified card
(II) RADEONHD(0): Mapped IO @ 0xe1200000 to 0x7fd3e23d4000 (size 0x00010000)
(II) RADEONHD(0): PCIE Card Detected
(II) RADEONHD(0): Getting BIOS copy from legacy VBIOS location
(II) RADEONHD(0): ATOM BIOS Rom:
SubsystemVendorID: 0x174b SubsystemID: 0x0880
IOBaseAddress: 0x2000
Filename: 5C8801SA.009
BIOS Bootup Message:

A67105 RV530XT VO BIOS GDDR3 588e/694m


(II) RADEONHD(0): Analog TV Default Mode: 1
(II) RADEONHD(0): Found default TV Mode NTSC
(--) RADEONHD(0): VideoRAM: 262144 kByte
(II) RADEONHD(0): Framebuffer space used by Firmware (kb): 20
(II) RADEONHD(0): Start of VRAM area used by Firmware: 0x7ffb000
(II) RADEONHD(0): AtomBIOS requests 20kB of VRAM scratch space
(II) RADEONHD(0): AtomBIOS VRAM scratch base: 0x7ffb000
(WW) RADEONHD(0): rhdAtomAllocateFbScratch: FW FB scratch area not located at the end of VRAM. Scratch End: 0x8000000 VRAM End: 0x10000000
(II) RADEONHD(0): Cannot get VRAM scratch space. Allocating in main memory instead

(note: log truncated around interesting part b/c of message length limits)

That's pretty funny, especially the bit about initalizing scratch space in system ram!!! Then when I try to do glxgears, I get:

Error: couldn't get an RGB, Double-buffered visual

which is pretty strange, especially since glxinfo claims everything's working fine. So then I try to fire up celestia, and the window flickers madly, doing what I assume is single-buffer opengl drawing (massive, ugly fail).

What is the problem here? I have Mesa 7.1 rc4, xserver 1.4.99.906, and radeonhd and drm from git.

oibaf
08-18-2008, 03:56 AM
You should add Option "DRI" to your xorg.conf to enable 3D. See also radeonhd man page.

TechMage89
08-18-2008, 11:54 AM
I did, and if I'd posted the whole Xorg.0.log, (which I couldn't, because the forum limits message lengths), you would have seen that DRI came up totally correctly by all appearences, and AIGLX even initialized.

Here's my glxinfo output:

name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_OML_swap_method, GLX_SGI_swap_control, GLX_SGIS_multisample,
GLX_SGIX_fbconfig, GLX_SGIX_visual_select_group
client glx vendor string: SGI
client glx version string: 1.4
client glx extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_allocate_memory,
GLX_MESA_copy_sub_buffer, GLX_MESA_swap_control,
GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap
GLX version: 1.2
GLX extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_swap_control,
GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_SGI_swap_control,
GLX_SGI_video_sync, GLX_SGIS_multisample, GLX_SGIX_fbconfig,
GLX_SGIX_visual_select_group
OpenGL vendor string: DRI R300 Project
OpenGL renderer string: Mesa DRI R300 20060815 TCL
OpenGL version string: 1.3 Mesa 7.1 rc4
OpenGL extensions:
GL_ARB_depth_texture, GL_ARB_fragment_program, GL_ARB_imaging,
GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_point_parameters,
GL_ARB_shadow, GL_ARB_shadow_ambient, GL_ARB_texture_border_clamp,
GL_ARB_texture_compression, GL_ARB_texture_cube_map,
GL_ARB_texture_env_add, GL_ARB_texture_env_combine,
GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3,
GL_MESAX_texture_float, GL_ARB_texture_mirrored_repeat,
GL_ARB_texture_rectangle, GL_ARB_transpose_matrix,
GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_window_pos,
GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color,
GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate,
GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract,
GL_EXT_clip_volume_hint, GL_EXT_compiled_vertex_array, GL_EXT_convolution,
GL_EXT_copy_texture, GL_EXT_draw_range_elements,
GL_EXT_gpu_program_parameters, GL_EXT_histogram, GL_EXT_multi_draw_arrays,
GL_EXT_packed_pixels, GL_EXT_point_parameters, GL_EXT_polygon_offset,
GL_EXT_rescale_normal, GL_EXT_secondary_color,
GL_EXT_separate_specular_color, GL_EXT_shadow_funcs,
GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture,
GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_edge_clamp,
GL_EXT_texture_env_add, GL_EXT_texture_env_combine,
GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic,
GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp,
GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_vertex_array,
GL_APPLE_packed_pixels, GL_ATI_blend_equation_separate,
GL_ATI_texture_env_combine3, GL_ATI_texture_mirror_once,
GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat,
GL_INGR_blend_func_separate, GL_MESA_pack_invert, GL_MESA_ycbcr_texture,
GL_MESA_window_pos, GL_NV_blend_square, GL_NV_light_max_exponent,
GL_NV_texture_rectangle, GL_NV_texgen_reflection, GL_NV_vertex_program,
GL_OES_read_format, GL_SGI_color_matrix, GL_SGI_color_table,
GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp,
GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod, GL_SGIX_depth_texture,
GL_SGIX_shadow_ambient, GL_SUN_multi_draw_arrays

1 GLX Visuals
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
0x6e 32 tc 0 32 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None

16 GLXFBConfigs:
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
0x6f 0 tc 0 32 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x70 0 tc 0 32 0 r . . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x71 0 tc 0 32 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x72 0 tc 0 32 0 r . . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x73 0 tc 0 32 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x74 0 tc 0 32 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
0x75 0 tc 0 32 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x76 0 tc 0 32 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
0x77 0 dc 0 32 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x78 0 dc 0 32 0 r . . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x79 0 dc 0 32 0 r . . 8 8 8 8 0 24 0 0 0 0 0 0 0 None
0x7a 0 dc 0 32 0 r . . 8 8 8 8 0 24 0 16 16 16 16 0 0 Slow
0x7b 0 dc 0 32 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x7c 0 dc 0 32 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow
0x7d 0 dc 0 32 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None
0x7e 0 dc 0 32 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow

Raedwulf
08-19-2008, 01:48 AM
I'm getting a similar problem but with the Intel GM965 chipset x3100 on ArchLinux x86_64.
Is it Mesa or something missing in the compile process? It would probably be good if one of the other distro's livecd comes out with the latest mesa to check.

kadambi
08-19-2008, 09:09 AM
I have the same problem. Mesa 7.1rc3 was running fine on my Fedora 9 system with ATI X800. I have reverted back to rc3. I suspect something is missing during the compile process.

Raedwulf
08-19-2008, 09:16 AM
I have the same problem. Mesa 7.1rc3 was running fine on my Fedora 9 system with ATI X800. I have reverted back to rc3. I suspect something is missing during the compile process.

Its that or mesa 7.1rc4 is broken.

TechMage89
08-19-2008, 10:07 AM
Maybe Mesa rc4 doesn't work with Xserver 1.4.99.906, but only the xserver git head?

I'll try later, when I have time.

Raedwulf
08-19-2008, 11:02 AM
I tried the xserver git head but a lot of other things didn't work :(.

Zhick
08-19-2008, 01:30 PM
I had the same problem about rgb double buffered visuals missing, but updating X Server to git fixed it for me.

Raedwulf
08-19-2008, 01:34 PM
I had the same problem about rgb double buffered visuals missing, but updating X Server to git fixed it for me.

I'll give it a go then :)

TechMage89
08-19-2008, 11:35 PM
I'm trying to install xserver from git now. Hello, dependency hell!

hobbes
09-02-2008, 01:56 AM
I'm having this very same issue using Debian Sid.

This are my packages:

xserver-xorg-core:
Instalado: 2:1.4.99.906-1
Candidato: 2:1.4.99.906-1
Tabela de versão:
*** 2:1.4.99.906-1 0
1 http://ftp.debian.org experimental/main Packages
100 /var/lib/dpkg/status

libgl1-mesa-dri:
Instalado: 7.1-1
Candidato: 7.1-1
Tabela de versão:
*** 7.1-1 0
1 http://ftp.debian.org experimental/main Packages
100 /var/lib/dpkg/status

did anyone workaround this issue?

Please let me know.

dungeon
09-02-2008, 07:27 AM
You must use xserver from git (or wait for final 1.5 release) with Mesa-7.1 or use 7.1 RC3 with xserver-1.4.99.906.

towo2099
09-02-2008, 09:25 AM
This is not true.
The actual version of xserver-xorg-core in experimental is
2:1.4.99.906-2 and work without problem with mesa 7.1 final.

dungeon
09-02-2008, 11:02 AM
Debian is really fast with those patched packages:rolleyes:.

hobbes
09-02-2008, 03:01 PM
This is not true.
The actual version of xserver-xorg-core in experimental is
2:1.4.99.906-2 and work without problem with mesa 7.1 final.

Indeed, I just checked on this (http://packages.debian.org/changelogs/pool/main/x/xorg-server/xorg-server_1.4.99.906-2/changelog) site and it says 2:1.4.99.906-2 as the newest version.

But, I can not get this package! Only 2:1.4.99.906-1.

Would you mind to share your experimental repositories with us?

Thanks for reading.

hobbes
09-02-2008, 03:10 PM
Nevermind, I just noticed that there is no 2:1.4.99.906-2 package to amd64 SID.

Architecture Version Package Size Installed Size Files

amd64 2:1.4.99.906-1 2,541.9 kB 5624 kB no current information

i386 2:1.4.99.906-2 2,374.2 kB 5036 kB no current information

link (http://packages.debian.org/experimental/x11/xserver-xorg-core)

RealNC
09-02-2008, 03:48 PM
On R500 use the radeon (git master), NOT the radeonhd driver.

hobbes
09-02-2008, 09:17 PM
On R500 use the radeon (git master), NOT the radeonhd driver.

I Just did that and also git clone Mesa/drm but the problem persists.

$glxinfo | egrep direct
direct rendering: Yes

$glxinfo | egrep OpenGL
OpenGL vendor string: DRI R300 Project
OpenGL renderer string: Mesa DRI R300 20060815 AGP 8x TCL
OpenGL version string: 1.3 Mesa 7.1

$egrep "(EE)" /var/log/Xorg.0.log
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(II) Loading extension MIT-SCREEN-SAVER

_ _ _ _ _

Xorg.0.log:

X.Org X Server 1.4.99.906 (1.5.0 RC 6)
Release Date:
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.17.7 x86_64 Debian
Current Operating System: Linux debian-desktop 2.6.26-1-amd64 #1 SMP Thu Aug 28 11:13:42 UTC 2008 x86_64
Build Date: 27 July 2008 11:54:00PM

more info: http://pastebin.com/m6f3a915
_________
$ dmesg | grep drm
[ 88.324998] [drm] Initialized drm 1.1.0 20060810
[ 88.333001] [drm] Initialized radeon 1.29.0 20080613 on minor 0
[ 88.792977] [drm] Setting GART location based on new memory map
[ 88.793007] [drm] Loading R500 Microcode
[ 88.793049] [drm] Num pipes: 1
[ 88.793060] [drm] writeback test succeeded in 2 usecs

$glxgears
Error: couldn't get an RGB, Double-buffered visual


Any thoughts would be appreciated.

hobbes
09-03-2008, 12:57 PM
Just an update.

xserver-xorg-core 2:1.4.99.906-2 AMD64 hit the experimental repositories today.

Problem solved.

Thanks for reading.