diff options
author | Ben Skeggs <[email protected]> | 2012-04-27 09:26:13 +1000 |
---|---|---|
committer | Ben Skeggs <[email protected]> | 2012-04-27 09:32:57 +1000 |
commit | 9856fd02a0d6f7314ed580aea4e354a49f3b013f (patch) | |
tree | 1c420155289ade0b2d273eae406e08421761ad30 /src/gallium | |
parent | a2f7ecfa74cdc73f3e0a7ea739ce962f7a029799 (diff) |
nv30: properly init window information
Should fix >2k rendering issues reported on nv4x.
Signed-off-by: Ben Skeggs <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/nv30/nv30_screen.c | 2 | ||||
-rw-r--r-- | src/gallium/drivers/nv30/nv30_state_validate.c | 5 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/gallium/drivers/nv30/nv30_screen.c b/src/gallium/drivers/nv30/nv30_screen.c index 158fef5a80c..d355f749a09 100644 --- a/src/gallium/drivers/nv30/nv30_screen.c +++ b/src/gallium/drivers/nv30/nv30_screen.c @@ -454,8 +454,6 @@ nv30_screen_create(struct nouveau_device *dev) PUSH_DATA (push, screen->query->handle); /* QUERY - intr 0x80 if nullobj */ PUSH_DATA (push, screen->null->handle); /* UNK1AC */ PUSH_DATA (push, screen->null->handle); /* UNK1B0 */ - BEGIN_NV04(push, NV30_3D(VIEWPORT_CLIP_MODE), 1); - PUSH_DATA (push, 0); if (screen->eng3d->oclass < NV40_3D_CLASS) { BEGIN_NV04(push, SUBC_3D(0x03b0), 1); PUSH_DATA (push, 0x00100000); diff --git a/src/gallium/drivers/nv30/nv30_state_validate.c b/src/gallium/drivers/nv30/nv30_state_validate.c index df0170bb8e4..ae7955bb413 100644 --- a/src/gallium/drivers/nv30/nv30_state_validate.c +++ b/src/gallium/drivers/nv30/nv30_state_validate.c @@ -110,8 +110,11 @@ nv30_validate_fb(struct nv30_context *nv30) BEGIN_NV04(push, NV30_3D(VIEWPORT_HORIZ), 2); PUSH_DATA (push, w << 16); PUSH_DATA (push, h << 16); - BEGIN_NV04(push, NV30_3D(VIEWPORT_TX_ORIGIN), 1); + BEGIN_NV04(push, NV30_3D(VIEWPORT_TX_ORIGIN), 4); PUSH_DATA (push, (y << 16) | x); + PUSH_DATA (push, 0); + PUSH_DATA (push, ((w - 1) << 16) | 0); + PUSH_DATA (push, ((h - 1) << 16) | 0); if ((nv30->state.rt_enable & NV30_3D_RT_ENABLE_COLOR0) || fb->zsbuf) { struct nv30_surface *rsf = nv30_surface(fb->cbufs[0]); |