mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-10 01:16:18 +00:00
Add decode of gen4 PIPE_CONTROL
This commit is contained in:
parent
b7d70fc1fd
commit
652d5518d6
@ -1426,6 +1426,7 @@ decode_3d_965(uint32_t *data, int count, uint32_t hw_offset, int *failures)
|
|||||||
{
|
{
|
||||||
unsigned int opcode, len;
|
unsigned int opcode, len;
|
||||||
int i;
|
int i;
|
||||||
|
char *desc1 = NULL;
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
uint32_t opcode;
|
uint32_t opcode;
|
||||||
@ -1633,6 +1634,31 @@ decode_3d_965(uint32_t *data, int count, uint32_t hw_offset, int *failures)
|
|||||||
|
|
||||||
return len;
|
return len;
|
||||||
|
|
||||||
|
case 0x7a00:
|
||||||
|
len = (data[0] & 0xff) + 2;
|
||||||
|
if (len != 4)
|
||||||
|
fprintf(out, "Bad count in PIPE_CONTROL\n");
|
||||||
|
if (count < len)
|
||||||
|
BUFFER_FAIL(count, len, "PIPE_CONTROL");
|
||||||
|
|
||||||
|
switch ((data[0] >> 14) & 0x3) {
|
||||||
|
case 0: desc1 = "no write"; break;
|
||||||
|
case 1: desc1 = "qword write"; break;
|
||||||
|
case 2: desc1 = "PS_DEPTH_COUNT write"; break;
|
||||||
|
case 3: desc1 = "TIMESTAMP write"; break;
|
||||||
|
}
|
||||||
|
instr_out(data, hw_offset, 0,
|
||||||
|
"PIPE_CONTROL: %s, %sdepth stall, %sRC write flush, "
|
||||||
|
"%sinst flush\n",
|
||||||
|
desc1,
|
||||||
|
data[0] & (1 << 13) ? "" : "no ",
|
||||||
|
data[0] & (1 << 12) ? "" : "no ",
|
||||||
|
data[0] & (1 << 11) ? "" : "no ");
|
||||||
|
instr_out(data, hw_offset, 1, "destination address\n");
|
||||||
|
instr_out(data, hw_offset, 2, "immediate dword low\n");
|
||||||
|
instr_out(data, hw_offset, 3, "immediate dword high\n");
|
||||||
|
return len;
|
||||||
|
|
||||||
case 0x7b00:
|
case 0x7b00:
|
||||||
len = (data[0] & 0xff) + 2;
|
len = (data[0] & 0xff) + 2;
|
||||||
if (len != 6)
|
if (len != 6)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user