summaryrefslogtreecommitdiffstats
path: root/src/intel/tools/error2aub.c
diff options
context:
space:
mode:
authorLionel Landwerlin <[email protected]>2018-09-04 13:44:49 +0100
committerLionel Landwerlin <[email protected]>2019-03-08 11:01:14 +0000
commit630a72827ab75161a143f09e65ecf2f12d10e0ed (patch)
treec513071e5380e6ededa3a4c5fed4429d7b6e965f /src/intel/tools/error2aub.c
parentc0ea043888c1440c6f6f30d616ef5d2bf45bef46 (diff)
intel/error2aub: parse other buffer types
We don't write them in the aub file yet. Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Rafael Antognolli <[email protected]>
Diffstat (limited to 'src/intel/tools/error2aub.c')
-rw-r--r--src/intel/tools/error2aub.c35
1 files changed, 22 insertions, 13 deletions
diff --git a/src/intel/tools/error2aub.c b/src/intel/tools/error2aub.c
index 8da484b3702..be178205833 100644
--- a/src/intel/tools/error2aub.c
+++ b/src/intel/tools/error2aub.c
@@ -156,7 +156,12 @@ struct bo {
BO_TYPE_UNKNOWN = 0,
BO_TYPE_BATCH,
BO_TYPE_USER,
+ BO_TYPE_CONTEXT,
+ BO_TYPE_RINGBUFFER,
+ BO_TYPE_STATUS,
+ BO_TYPE_CONTEXT_WA,
} type;
+ const char *name;
uint64_t addr;
uint8_t *data;
uint64_t size;
@@ -358,23 +363,27 @@ main(int argc, char *argv[])
enum bo_type type;
} bo_types[] = {
{ "gtt_offset", BO_TYPE_BATCH },
- { "user", BO_TYPE_USER },
- { NULL, BO_TYPE_UNKNOWN },
+ { "user", BO_TYPE_USER },
+ { "HW context", BO_TYPE_CONTEXT },
+ { "ringbuffer", BO_TYPE_RINGBUFFER },
+ { "HW Status", BO_TYPE_STATUS },
+ { "WA context", BO_TYPE_CONTEXT_WA },
+ { "unknown", BO_TYPE_UNKNOWN },
}, *b;
- for (b = bo_types; b->match; b++) {
- if (strncasecmp(dashes, b->match, strlen(b->match)) == 0) {
-
- /* The batch buffer will appear twice as gtt_offset and user.
- * Only keep the batch type.
- */
- if (last_bo->type == BO_TYPE_BATCH && b->type == BO_TYPE_USER)
- break;
-
- last_bo->type = b->type;
+ for (b = bo_types; b->type != BO_TYPE_UNKNOWN; b++) {
+ if (strncasecmp(dashes, b->match, strlen(b->match)) == 0)
break;
- }
}
+
+ /* The batch buffer will appear twice as gtt_offset and user. Only
+ * keep the batch type.
+ */
+ if (last_bo->type == BO_TYPE_UNKNOWN) {
+ last_bo->type = b->type;
+ last_bo->name = b->match;
+ }
+
continue;
}
}