Hey all, So in mesa for swtcl cases we emit vertices to DMA, and set a driver internal dma.flush hook, we also set ctx->Driver.NeedFlush |= FLUSH_STORED_VERTICES;
The driver has its FlushVertices pointed at the vbo_exec_FlushVertices call. I'm not sure when this ever worked but I assume it did at one stage in r100 driver since I haven't really changed this code flow, I'm contemplating doing something like the below but maybe someone can say when this all got broken. Dave. diff --git a/src/mesa/drivers/dri/radeon/radeon_context.c b/src/mesa/drivers/dri/radeon/radeon_context.c index 8f4485a..d103ac5 100644 --- a/src/mesa/drivers/dri/radeon/radeon_context.c +++ b/src/mesa/drivers/dri/radeon/radeon_context.c @@ -204,6 +204,14 @@ static void r100_init_vtbl(radeonContextPtr radeon) radeon->vtbl.emit_query_finish = r100_emit_query_finish; } +static void radeon_flush_vertices(GLcontext *ctx, GLuint flags) +{ + r100ContextPtr rmesa = R100_CONTEXT(ctx); + if (rmesa->radeon.dma.flush) + rmesa->radeon.dma.flush(ctx); + vbo_exec_FlushVertices(ctx, flags); +} + /* Create the device specific context. */ GLboolean @@ -329,6 +337,7 @@ r100CreateContext( const __GLcontextModes *glVisual, _swsetup_CreateContext( ctx ); _ae_create_context( ctx ); + ctx->Driver.FlushVertices = radeon_flush_vertices; /* Install the customized pipeline: */ _tnl_destroy_pipeline( ctx ); ------------------------------------------------------------------------------ Come build with us! The BlackBerry® Developer Conference in SF, CA is the only developer event you need to attend this year. Jumpstart your developing skills, take BlackBerry mobile applications to market and stay ahead of the curve. Join us from November 9-12, 2009. Register now! http://p.sf.net/sfu/devconf _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mesa3d-dev