Index: shared-core/radeon_drv.h =================================================================== RCS file: /cvs/dri/drm/shared-core/radeon_drv.h,v retrieving revision 1.69 diff -u -r1.69 radeon_drv.h --- shared-core/radeon_drv.h 25 Mar 2006 07:16:14 -0000 1.69 +++ shared-core/radeon_drv.h 17 Apr 2006 20:30:27 -0000 @@ -882,6 +882,8 @@ #define RADEON_PP_CUBIC_OFFSET_T1_0 0x1e00 #define RADEON_PP_CUBIC_OFFSET_T2_0 0x1e14 +#define RADEON_SE_TCL_STATE_FLUSH 0x2284 + #define SE_VAP_CNTL__TCL_ENA_MASK 0x00000001 #define SE_VAP_CNTL__FORCE_W_TO_ONE_MASK 0x00010000 #define SE_VAP_CNTL__VF_MAX_VTX_NUM__SHIFT 0x00000012 Index: shared-core/radeon_state.c =================================================================== RCS file: /cvs/dri/drm/shared-core/radeon_state.c,v retrieving revision 1.68 diff -u -r1.68 radeon_state.c --- shared-core/radeon_state.c 8 Apr 2006 09:45:43 -0000 1.68 +++ shared-core/radeon_state.c 17 Apr 2006 20:30:28 -0000 @@ -2630,7 +2630,8 @@ int stride = header.vectors.stride; RING_LOCALS; - BEGIN_RING(3 + sz); + BEGIN_RING(5 + sz); + OUT_RING_REG(RADEON_SE_TCL_STATE_FLUSH, 0); OUT_RING(CP_PACKET0(RADEON_SE_TCL_VECTOR_INDX_REG, 0)); OUT_RING(start | (stride << RADEON_VEC_INDX_OCTWORD_STRIDE_SHIFT)); OUT_RING(CP_PACKET0_TABLE(RADEON_SE_TCL_VECTOR_DATA_REG, (sz - 1)));