From b8646bc2af87f4b2cde50980da878b89d09cdf96 Mon Sep 17 00:00:00 2001 From: Christoph Bumiller Date: Wed, 2 Mar 2011 20:15:01 +0100 Subject: [PATCH] nv50: fix depth clamp for disabled primitive clipping --- src/gallium/drivers/nv50/nv50_state_validate.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_state_validate.c b/src/gallium/drivers/nv50/nv50_state_validate.c index d0b4af6c41b..bf46296e7ef 100644 --- a/src/gallium/drivers/nv50/nv50_state_validate.c +++ b/src/gallium/drivers/nv50/nv50_state_validate.c @@ -197,9 +197,19 @@ nv50_validate_clip(struct nv50_context *nv50) struct nouveau_channel *chan = nv50->screen->base.channel; uint32_t clip; - clip = nv50->clip.depth_clamp ? 0x0018 : 0x0000; + if (nv50->clip.depth_clamp) { + clip = + NV50_3D_VIEW_VOLUME_CLIP_CTRL_DEPTH_CLAMP_NEAR | + NV50_3D_VIEW_VOLUME_CLIP_CTRL_DEPTH_CLAMP_FAR | + NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK12_UNK1; + } else { + clip = 0; + } + #ifndef NV50_SCISSORS_CLIPPING - clip |= 0x1080; + clip |= + NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK7 | + NV50_3D_VIEW_VOLUME_CLIP_CTRL_UNK12_UNK1; #endif BEGIN_RING(chan, RING_3D(VIEW_VOLUME_CLIP_CTRL), 1); -- 2.30.2