diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2011-10-25 12:24:17 +0200 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2011-10-25 12:24:17 +0200 |
commit | 28d1be3f9bca0ef5fb87d5c8c45d71f7e94a4e2c (patch) | |
tree | dcaf3d35e599d206075ee9d3c3b08bafc9675761 | |
parent | c2657e865f5c87a8ac64f75a560b6c0f01fe1a0d (diff) |
tools/decode: decode XY_SCANLINES_BLT
-rw-r--r-- | tools/intel_decode.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tools/intel_decode.c b/tools/intel_decode.c index b55573cd..71625817 100644 --- a/tools/intel_decode.c +++ b/tools/intel_decode.c @@ -295,6 +295,24 @@ decode_2d(uint32_t *data, int count, uint32_t hw_offset, int *failures) }; switch ((data[0] & 0x1fc00000) >> 22) { + case 0x25: + instr_out(data, hw_offset, 0, + "XY_SCANLINES_BLT (pattern seed (%d, %d), dst tile %d)\n", + (data[0] >> 12) &0x8, + (data[0] >> 8) &0x8, + (data[0] >> 11) & 1); + + len = (data[0] & 0x000000ff) + 2; + if (len != 3) + fprintf(out, "Bad count in XY_SCANLINES_BLT\n"); + if (count < 3) + BUFFER_FAIL(count, len, "XY_SCANLINES_BLT"); + + instr_out(data, hw_offset, 1, "dest (%d,%d)\n", + data[1] & 0xffff, data[1] >> 16); + instr_out(data, hw_offset, 2, "dest (%d,%d)\n", + data[2] & 0xffff, data[2] >> 16); + return len; case 0x01: decode_2d_br00(data, 0, hw_offset, "XY_SETUP_BLT"); |