summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/r200/r200_swtcl.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2009-01-29 23:19:11 +1000
committerDave Airlie <airlied@redhat.com>2009-01-30 20:03:17 +1000
commit08bb7eedfbba839676ab63fb20dd22e4f27722cb (patch)
tree480a6745062dbbd3b7f0a4b54f596b5de5ea0379 /src/mesa/drivers/dri/r200/r200_swtcl.c
parent70661f678edcc9b6dd5005016e3355ec4546e716 (diff)
downloadexternal_mesa3d-08bb7eedfbba839676ab63fb20dd22e4f27722cb.zip
external_mesa3d-08bb7eedfbba839676ab63fb20dd22e4f27722cb.tar.gz
external_mesa3d-08bb7eedfbba839676ab63fb20dd22e4f27722cb.tar.bz2
r200: fix swtcl - slow but works
Diffstat (limited to 'src/mesa/drivers/dri/r200/r200_swtcl.c')
-rw-r--r--src/mesa/drivers/dri/r200/r200_swtcl.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/r200/r200_swtcl.c b/src/mesa/drivers/dri/r200/r200_swtcl.c
index 2a22bd2..ef725a0 100644
--- a/src/mesa/drivers/dri/r200/r200_swtcl.c
+++ b/src/mesa/drivers/dri/r200/r200_swtcl.c
@@ -310,6 +310,9 @@ r200AllocDmaLowVerts( r200ContextPtr rmesa, int nverts, int vsize )
{
GLuint bytes = vsize * nverts;
+ if (rmesa->swtcl.flush)
+ rmesa->swtcl.flush(rmesa->radeon.glCtx);
+
rmesa->swtcl.bo = radeon_bo_open(rmesa->radeon.radeonScreen->bom,
0, bytes, 4, RADEON_GEM_DOMAIN_GTT, 0);
radeon_bo_map(rmesa->swtcl.bo, 1);
@@ -317,6 +320,7 @@ r200AllocDmaLowVerts( r200ContextPtr rmesa, int nverts, int vsize )
rmesa->radeon.glCtx->Driver.NeedFlush |= FLUSH_STORED_VERTICES;
rmesa->radeon.dma.flush = flush_last_swtcl_prim;
}
+ rmesa->swtcl.numverts = nverts;
return rmesa->swtcl.bo->ptr;