summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2009-05-01 11:50:17 -0700
committerCarl Worth <cworth@cworth.org>2009-05-08 13:57:13 -0700
commitca63a5d4afd8482d280d8d64c58021e568931e27 (patch)
treebe74d623ed141fe9af4f38212c896f6238d83d53
parent77153d690a3673fdee7bef8e567816b754c43081 (diff)
3D_STATE_VERTEX_BUFFERS takes four 32-bit values, not three.
The spec says this command takes an extra (mbz) 32-bit value, so let's provide it with one. Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit ed492131c13715b73c14d328d0668120acb58b40)
-rw-r--r--src/i965_video.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/i965_video.c b/src/i965_video.c
index c0a69fd6..7b52de71 100644
--- a/src/i965_video.c
+++ b/src/i965_video.c
@@ -1130,15 +1130,16 @@ I965DisplayVideoTextured(ScrnInfoPtr pScrn, I830PortPrivPtr pPriv, int id,
i965_emit_video_setup(pScrn, bind_bo, n_src_surf);
- BEGIN_BATCH(10);
+ BEGIN_BATCH(12);
/* Set up the pointer to our vertex buffer */
- OUT_BATCH(BRW_3DSTATE_VERTEX_BUFFERS | 2);
+ OUT_BATCH(BRW_3DSTATE_VERTEX_BUFFERS | 3);
/* four 32-bit floats per vertex */
OUT_BATCH((0 << VB0_BUFFER_INDEX_SHIFT) |
VB0_VERTEXDATA |
((4 * 4) << VB0_BUFFER_PITCH_SHIFT));
OUT_RELOC(vb_bo, I915_GEM_DOMAIN_VERTEX, 0, 0);
OUT_BATCH(3); /* four corners to our rectangle */
+ OUT_BATCH(0); /* reserved */
OUT_BATCH(BRW_3DPRIMITIVE |
BRW_3DPRIMITIVE_VERTEX_SEQUENTIAL |
@@ -1150,6 +1151,7 @@ I965DisplayVideoTextured(ScrnInfoPtr pScrn, I830PortPrivPtr pPriv, int id,
OUT_BATCH(1); /* single instance */
OUT_BATCH(0); /* start instance location */
OUT_BATCH(0); /* index buffer offset, ignored */
+ OUT_BATCH(MI_NOOP);
ADVANCE_BATCH();
intel_batch_end_atomic(pScrn);