diff options
Diffstat (limited to 'src/broadcom')
-rw-r--r-- | src/broadcom/clif/clif_dump.c | 16 | ||||
-rw-r--r-- | src/broadcom/clif/clif_private.h | 4 |
2 files changed, 17 insertions, 3 deletions
diff --git a/src/broadcom/clif/clif_dump.c b/src/broadcom/clif/clif_dump.c index fe68b5102eb..b48a156c5fa 100644 --- a/src/broadcom/clif/clif_dump.c +++ b/src/broadcom/clif/clif_dump.c @@ -170,6 +170,11 @@ clif_process_worklist(struct clif_dump *clif) } switch (reloc->type) { + case reloc_cl: + clif_dump_cl(clif, reloc->addr, reloc->cl.end); + out(clif, "\n"); + break; + case reloc_gl_shader_state: clif_dump_gl_shader_state_record(clif, reloc, @@ -184,13 +189,18 @@ clif_process_worklist(struct clif_dump *clif) } } +void clif_dump(struct clif_dump *clif) +{ + clif_process_worklist(clif); +} + void clif_dump_add_cl(struct clif_dump *clif, uint32_t start, uint32_t end) { - clif_dump_cl(clif, start, end); - out(clif, "\n"); + struct reloc_worklist_entry *entry = + clif_dump_add_address_to_worklist(clif, reloc_cl, start); - clif_process_worklist(clif); + entry->cl.end = end; } void diff --git a/src/broadcom/clif/clif_private.h b/src/broadcom/clif/clif_private.h index 0d762c4b747..da5f2a3cc29 100644 --- a/src/broadcom/clif/clif_private.h +++ b/src/broadcom/clif/clif_private.h @@ -50,6 +50,7 @@ struct clif_dump { }; enum reloc_worklist_type { + reloc_cl, reloc_gl_shader_state, reloc_generic_tile_list, }; @@ -62,6 +63,9 @@ struct reloc_worklist_entry { union { struct { + uint32_t end; + } cl; + struct { uint32_t num_attrs; } shader_state; struct { |