diff options
author | Lionel Landwerlin <[email protected]> | 2018-09-04 14:50:13 +0100 |
---|---|---|
committer | Lionel Landwerlin <[email protected]> | 2019-03-08 11:01:14 +0000 |
commit | 9b5dc2124fabaae3db42bab6639d507657e22866 (patch) | |
tree | 7325d35183506e2b305e94b831dcf5b21e6af281 /src/intel/tools/error2aub.c | |
parent | cdab19fa57ede4be26c7b8ab1a76652071ad63bd (diff) |
intel/error2aub: store engine last ring buffer head/tail pointers
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.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/intel/tools/error2aub.c b/src/intel/tools/error2aub.c index 0fbbf29daec..1b1f8d9c5f9 100644 --- a/src/intel/tools/error2aub.c +++ b/src/intel/tools/error2aub.c @@ -280,6 +280,14 @@ main(int argc, char *argv[]) enum address_space active_gtt = PPGTT; + struct { + struct { + uint32_t ring_buffer_head; + uint32_t ring_buffer_tail; + } instances[3]; + } engines[I915_ENGINE_CLASS_VIDEO_ENHANCE + 1]; + memset(engines, 0, sizeof(engines)); + int num_ring_bos = 0; struct list_head bo_list; @@ -310,6 +318,20 @@ main(int argc, char *argv[]) continue; } + if (sscanf(line, " ring->head: 0x%x\n", + &engines[ + active_engine_class].instances[ + active_engine_instance].ring_buffer_head) == 1) { + continue; + } + + if (sscanf(line, " ring->tail: 0x%x\n", + &engines[ + active_engine_class].instances[ + active_engine_instance].ring_buffer_tail) == 1) { + continue; + } + const char *active_start = "Active ("; if (strncmp(line, active_start, strlen(active_start)) == 0) { char *ring = line + strlen(active_start); |