summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBen Skeggs <[email protected]>2012-04-15 10:52:06 +1000
committerBen Skeggs <[email protected]>2012-04-15 21:56:20 +1000
commit29128e5ee20b198ebedf0ff979d96c78ad264b8f (patch)
treece8dd17884e818876d98cbf5007dcfa33c8a6b8f /src
parentabfe7591729c2ac205e17b0f873f843aea99c09b (diff)
nv30: fix some sifm transfer issues
Diffstat (limited to 'src')
-rw-r--r--src/gallium/drivers/nv30/nv30_transfer.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/gallium/drivers/nv30/nv30_transfer.c b/src/gallium/drivers/nv30/nv30_transfer.c
index 8e7088378b7..3dd958109d8 100644
--- a/src/gallium/drivers/nv30/nv30_transfer.c
+++ b/src/gallium/drivers/nv30/nv30_transfer.c
@@ -468,11 +468,10 @@ nv30_transfer_rect_sifm(XFER_ARGS)
PUSH_DATA (push, ((src->x1 - src->x0) << 20) / (dst->x1 - dst->x0));
PUSH_DATA (push, ((src->y1 - src->y0) << 20) / (dst->y1 - dst->y0));
BEGIN_NV04(push, NV03_SIFM(SIZE), 4);
- PUSH_DATA (push, align((src->y1 - src->y0), 2) << 16 |
- align((src->x1 - src->x0), 2));
+ PUSH_DATA (push, align(src->h, 2) << 16 | align(src->w, 2));
PUSH_DATA (push, src->pitch | si_arg);
PUSH_RELOC(push, src->bo, src->offset, NOUVEAU_BO_LOW, 0, 0);
- PUSH_DATA (push, (src->y0 << 16) | src->x0);
+ PUSH_DATA (push, (src->y0 << 20) | src->x0 << 4);
}
/* The NOP+OFFSET_OUT stuff after each M2MF transfer *is* actually required