On Tuesday 19 April 2005 10:49 am, jan kreuzer wrote: > Hi > > the fix you provided let the module get compiled. > However when starting an GL-Application i get the following: > > glxgears > 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 518 > TODO - double side stencil ! > ******************************************************************* >******** > *********************************WARN_ONCE************************* >******** File r300_state.c function r300Enable line 539 > Don't know how to enable polygon offset point/line. Help me ! > ******************************************************************* >******** drmRadeonCmdBuffer: -22 (exiting) > > And the following in the dmesg: > > error: [drm:pid596:r300_emit_unchecked_state] *ERROR* Unrecognized > register range: 1d98 6 > error: [drm:pid596:r300_do_cp_cmdbuf] *ERROR* > r300_emit_unchecked_state failed
In fact, I made it working too. A little bit ugly kludge is attached. You don't have to comment out r300_check_range(). Jung-uk Kim > Greetings Jan
Index: drmP.h =================================================================== RCS file: /cvsroot/r300/r300_driver/drm/bsd-core/drmP.h,v retrieving revision 1.2 diff -u -r1.2 drmP.h --- drmP.h 2 Mar 2005 03:54:19 -0000 1.2 +++ drmP.h 19 Apr 2005 16:07:02 -0000 @@ -255,6 +255,10 @@ typedef u_int16_t u16; typedef u_int8_t u8; +/* XXX: Linuxism */ +#define __init +#define __initdata + /* DRM_READMEMORYBARRIER() prevents reordering of reads. * DRM_WRITEMEMORYBARRIER() prevents reordering of writes. * DRM_MEMORYBARRIER() prevents reordering of reads and writes. Index: radeon_drv.c =================================================================== RCS file: /cvsroot/r300/r300_driver/drm/bsd-core/radeon_drv.c,v retrieving revision 1.2 diff -u -r1.2 radeon_drv.c --- radeon_drv.c 2 Mar 2005 03:54:20 -0000 1.2 +++ radeon_drv.c 19 Apr 2005 16:07:02 -0000 @@ -91,6 +91,7 @@ bzero(dev, sizeof(drm_device_t)); radeon_configure(dev); + r300_init_reg_flags(); /* XXX: shouldn't be here */ return drm_attach(nbdev, radeon_pciidlist); }