summaryrefslogtreecommitdiff
path: root/lib/intel_batchbuffer.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2014-08-30 11:44:51 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2014-08-30 11:44:51 +0100
commit10552b5ca6c193e0c696e96c9f5e0d6142f4d8ee (patch)
tree3444d7c434189df481759c8419c6c092155fc872 /lib/intel_batchbuffer.c
parent255bade1ea98e642fe6d01c9dee8d5e8661bd816 (diff)
batch: Specify number of relocations to accommodate
Since relocations are variable size, depending upon generation, it is easier to handle the resizing of the batch request inside the BEGIN_BATCH macro. This still leaves us with having to resize commands in a few places - which still need adaption for gen8+. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'lib/intel_batchbuffer.c')
-rw-r--r--lib/intel_batchbuffer.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/intel_batchbuffer.c b/lib/intel_batchbuffer.c
index 175791e1..7313bb59 100644
--- a/lib/intel_batchbuffer.c
+++ b/lib/intel_batchbuffer.c
@@ -360,9 +360,7 @@ intel_blt_copy(struct intel_batchbuffer *batch,
igt_fail(1);
}
- BEGIN_BATCH(gen >= 8 ? 10 : 8);
- OUT_BATCH(XY_SRC_COPY_BLT_CMD | cmd_bits |
- (gen >= 8 ? 8 : 6));
+ BLIT_COPY_BATCH_START(cmd_bits);
OUT_BATCH((br13_bits) |
(0xcc << 16) | /* copy ROP */
dst_pitch);
@@ -376,12 +374,14 @@ intel_blt_copy(struct intel_batchbuffer *batch,
#define CMD_POLY_STIPPLE_OFFSET 0x7906
if (gen == 5) {
+ BEGIN_BATCH(2, 0);
OUT_BATCH(CMD_POLY_STIPPLE_OFFSET << 16);
OUT_BATCH(0);
+ ADVANCE_BATCH();
}
if (gen >= 6 && src_bo == dst_bo) {
- BEGIN_BATCH(3);
+ BEGIN_BATCH(3, 0);
OUT_BATCH(XY_SETUP_CLIP_BLT_CMD);
OUT_BATCH(0);
OUT_BATCH(0);