summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2008-02-04 21:59:26 +1100
committerDave Airlie <airlied@redhat.com>2008-02-04 21:59:26 +1100
commit4dfcb09960e4775b5ca2038b7cc608f7720cec20 (patch)
tree1e19c264fd6e5c1bd1ea26a6c9484ab2ea5153df /src
parente36857d841c0c973abb8536a20e7d5a7e01223d3 (diff)
r300: fix isosurf on rs690
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/r300/r300_state.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_state.c b/src/mesa/drivers/dri/r300/r300_state.c
index b90f42234a..1253666f54 100644
--- a/src/mesa/drivers/dri/r300/r300_state.c
+++ b/src/mesa/drivers/dri/r300/r300_state.c
@@ -2215,8 +2215,15 @@ static void r300RenderMode(GLcontext * ctx, GLenum mode)
static void r300ClipPlane( GLcontext *ctx, GLenum plane, const GLfloat *eq )
{
r300ContextPtr rmesa = R300_CONTEXT(ctx);
- GLint p = (GLint) plane - (GLint) GL_CLIP_PLANE0;
- GLint *ip = (GLint *)ctx->Transform._ClipUserPlane[p];
+ GLint p;
+ GLint *ip;
+
+ /* no VAP UCP on non-TCL chipsets */
+ if (!(rmesa->radeon.radeonScreen->chip_flags & RADEON_CHIPSET_TCL))
+ return;
+
+ p = (GLint) plane - (GLint) GL_CLIP_PLANE0;
+ ip = (GLint *)ctx->Transform._ClipUserPlane[p];
R300_STATECHANGE( rmesa, vpucp[p] );
rmesa->hw.vpucp[p].cmd[R300_VPUCP_X] = ip[0];