Jesse Barnes wrote:
Ok, so I've got everything built and the sample server starts (after applying
the attached patch):
[EMAIL PROTECTED] miniglx]# ./sample_server
[miniglx] probed chipset 0x4e4b
got MMIOAddress 0x20001090 offset 268435456
[drm] added 65536 byte SAREA at 0xa00204fa
[drm] mapped SAREA 0xa00204fa to 0x20001120, size 65536
[drm] framebuffer handle = 0xc041c800
[drm] register handle = 0xc041c010
[pci] 8192 kB allocated with handle 0x0551c000
[pci] ring handle = 0xa0020551c000
[pci] ring read ptr handle = 0xa0020562
[pci] vertex/indirect buffers handle = 0xa00205624000
[pci] GART texture map handle = 0xa00205824000
Using 8 MB AGP aperture
Using 1 MB for the ring buffer
Using 2 MB for vertex/indirect buffers
Using 1 MB for AGP textures
Will use back buffer at offset 0x60
Will use depth buffer at offset 0xb0
Will use 245760 kb for textures at offset 0x100
[drm] Added 32 65536 byte vertex/indirect buffers
[drm] dma control initialized, using IRQ 67
[drm] Initialized kernel gart heap manager, 5111808
page flipping disabled
[miniglx] Setting mode: visible 1280x1024 virtual 1280x1024x32
[miniglx] Readback mode: visible 1280x1024 virtual 1280x1024x32
RADEONEngineRestore
[1]+ Stopped ./sample_server
[EMAIL PROTECTED] miniglx]# bg
then I start up the sample test app:
[EMAIL PROTECTED] miniglx]# ./miniglxtest
[miniglx] probed chipset 0x4e4b
CreateNotify
Authorize - magic 1
Unknown device ID 4E4B, please report. Assuming plain R300.
Using 8 maximum texture units..
sizeof(drm_r300_cmd_header_t)=4
sizeof(drm_radeon_cmd_buffer_t)=32
Allocating 284420 bytes command buffer (max state is 11140 bytes)
*WARN_ONCE*
File r300_state.c function r300Enable line 516
Don't know how to enable polygon offset point/line. Help me !
***
DestroyNotify
Segmentation fault
Any ideas? Is this because I'm using the radeon server/ directory (at least
it looks like the r300 dir's server/ dir has items symlinked back to
radeon/)?
Ok, I (finally) found it.
You need the attached one-liner to set the mode. The rest is just
something I have in my tree to make it gcc2-friendly.
Stephane
Index: miniglx.c
===
RCS file: /cvs/mesa/Mesa/src/glx/mini/miniglx.c,v
retrieving revision 1.17
diff -u -r1.17 miniglx.c
--- miniglx.c 5 Jan 2005 22:40:34 - 1.17
+++ miniglx.c 5 Mar 2005 03:27:48 -
@@ -1103,6 +1103,7 @@
drmVersionPtr version;
drm_handle_t hFB;
intjunk;
+drm_magic_t magic;
err_msg = "XF86DRIOpenConnection";
err_extra = NULL;
@@ -1117,8 +1118,6 @@
if (fd < 0) goto done;
-drm_magic_t magic;
-
err_msg = "drmGetMagic";
err_extra = NULL;
@@ -1989,6 +1988,7 @@
else
sharePriv = NULL;
+ ctx->driContext.mode = vis->visual->mode;
ctx->driContext.private = dpy->driScreen.createNewContext(dpy,
vis->visual->mode,
GLX_WINDOW_BIT, sharePriv, &ctx->driContext);