Signed-off-by: Tom St Denis <[email protected]>
---
 src/lib/ring_decode.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/ring_decode.c b/src/lib/ring_decode.c
index dee1502cc788..c904df0e281c 100644
--- a/src/lib/ring_decode.c
+++ b/src/lib/ring_decode.c
@@ -395,7 +395,7 @@ static void print_bits(struct umr_asic *asic, uint32_t 
regno, uint32_t value, in
                                printf("\t\t\t\t\t\t\t\t\\----+ ");
                        else
                                printf("\t\t\t\t\t\t\t\t|----+ ");
-                       v = (value >> reg->bits[k].start) & (1UL << 
(reg->bits[k].stop - reg->bits[k].start));
+                       v = (value >> reg->bits[k].start) & ((1ULL << 
((reg->bits[k].stop + 1) - reg->bits[k].start)) - 1);
                        reg->bits[k].bitfield_print(asic, asic->asicname, 
ip->ipname, reg->regname, reg->bits[k].regname, reg->bits[k].start, 
reg->bits[k].stop, v);
                }
        }
@@ -805,6 +805,7 @@ static void print_decode_pm4(struct umr_asic *asic, struct 
umr_ring_decoder *dec
                                (unsigned long)decoder->pm4.cur_word++, name,
                                BLUE, (unsigned 
long)decoder->pm4.next_write_mem.addr_lo, RST,
                                YELLOW, (unsigned long)ib, RST);
+                       print_bits(asic, decoder->pm4.next_write_mem.addr_lo, 
ib, 1);
 
                        // strip off IP name
                        name = strstr(name, ".");
-- 
2.12.0

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to