summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/nv40/nv40_vbo.c
diff options
context:
space:
mode:
authorBen Skeggs <[email protected]>2008-04-28 15:42:19 +1000
committerBen Skeggs <[email protected]>2008-04-28 19:25:40 +1000
commit58b1bcaa094ed07a54bd7e4cdbddbcdcf1f629a7 (patch)
tree49e9b1ec370994abc3f691ef6946a053ab238763 /src/gallium/drivers/nv40/nv40_vbo.c
parent2193578851b3b5a99c078b28187cf3158f4218f6 (diff)
nv40: do full swtnl fallback when edge flags present.
This isn't necessary, with some effort we can do this on the hw. However, until I encounter something "real" that uses them there's not a lot of point.
Diffstat (limited to 'src/gallium/drivers/nv40/nv40_vbo.c')
-rw-r--r--src/gallium/drivers/nv40/nv40_vbo.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/drivers/nv40/nv40_vbo.c b/src/gallium/drivers/nv40/nv40_vbo.c
index 06374184b12..e5f9bd5668a 100644
--- a/src/gallium/drivers/nv40/nv40_vbo.c
+++ b/src/gallium/drivers/nv40/nv40_vbo.c
@@ -488,6 +488,11 @@ nv40_vbo_validate(struct nv40_context *nv40)
unsigned vb_flags = NOUVEAU_BO_VRAM | NOUVEAU_BO_GART | NOUVEAU_BO_RD;
int hw;
+ if (nv40->edgeflags) {
+ nv40->fallback_swtnl |= NV40_NEW_ARRAYS;
+ return FALSE;
+ }
+
vtxbuf = so_new(20, 18);
so_method(vtxbuf, curie, NV40TCL_VTXBUF_ADDRESS(0), nv40->vtxelt_nr);
vtxfmt = so_new(17, 0);