diff options
author | Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> | 2017-10-14 13:22:22 +0100 |
---|---|---|
committer | Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> | 2017-10-31 17:25:37 +0000 |
commit | 331b7fc1569d65eb9e083e6d3e3c9352fcccd4f9 (patch) | |
tree | 37c4b9ec9c5230d81c42cf158f680b5c007e93cc /hw/dma | |
parent | 4ca3d368d2a66e6e0739fd1cb4552e68d060d337 (diff) | |
download | qemu-331b7fc1569d65eb9e083e6d3e3c9352fcccd4f9.zip qemu-331b7fc1569d65eb9e083e6d3e3c9352fcccd4f9.tar.gz qemu-331b7fc1569d65eb9e083e6d3e3c9352fcccd4f9.tar.bz2 |
sparc32_dma: add len to esp/le DMA memory tracing
This is surprisingly useful when trying to debug DMA issues.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Diffstat (limited to 'hw/dma')
-rw-r--r-- | hw/dma/sparc32_dma.c | 8 | ||||
-rw-r--r-- | hw/dma/trace-events | 8 |
2 files changed, 8 insertions, 8 deletions
diff --git a/hw/dma/sparc32_dma.c b/hw/dma/sparc32_dma.c index f64787e..7d00f1a 100644 --- a/hw/dma/sparc32_dma.c +++ b/hw/dma/sparc32_dma.c @@ -74,7 +74,7 @@ void ledma_memory_read(void *opaque, hwaddr addr, int i; addr |= s->dmaregs[3]; - trace_ledma_memory_read(addr); + trace_ledma_memory_read(addr, len); if (do_bswap) { sparc_iommu_memory_read(s->iommu, addr, buf, len); } else { @@ -95,7 +95,7 @@ void ledma_memory_write(void *opaque, hwaddr addr, uint16_t tmp_buf[32]; addr |= s->dmaregs[3]; - trace_ledma_memory_write(addr); + trace_ledma_memory_write(addr, len); if (do_bswap) { sparc_iommu_memory_write(s->iommu, addr, buf, len); } else { @@ -140,7 +140,7 @@ void espdma_memory_read(void *opaque, uint8_t *buf, int len) { DMADeviceState *s = opaque; - trace_espdma_memory_read(s->dmaregs[1]); + trace_espdma_memory_read(s->dmaregs[1], len); sparc_iommu_memory_read(s->iommu, s->dmaregs[1], buf, len); s->dmaregs[1] += len; } @@ -149,7 +149,7 @@ void espdma_memory_write(void *opaque, uint8_t *buf, int len) { DMADeviceState *s = opaque; - trace_espdma_memory_write(s->dmaregs[1]); + trace_espdma_memory_write(s->dmaregs[1], len); sparc_iommu_memory_write(s->iommu, s->dmaregs[1], buf, len); s->dmaregs[1] += len; } diff --git a/hw/dma/trace-events b/hw/dma/trace-events index 428469a..6b367f0 100644 --- a/hw/dma/trace-events +++ b/hw/dma/trace-events @@ -7,12 +7,12 @@ rc4030_read(uint64_t addr, uint32_t ret) "read reg[0x%"PRIx64"] = 0x%x" rc4030_write(uint64_t addr, uint32_t val) "write reg[0x%"PRIx64"] = 0x%x" # hw/dma/sparc32_dma.c -ledma_memory_read(uint64_t addr) "DMA read addr 0x%"PRIx64 -ledma_memory_write(uint64_t addr) "DMA write addr 0x%"PRIx64 +ledma_memory_read(uint64_t addr, int len) "DMA read addr 0x%"PRIx64 " len %d" +ledma_memory_write(uint64_t addr, int len) "DMA write addr 0x%"PRIx64 " len %d" sparc32_dma_set_irq_raise(void) "Raise IRQ" sparc32_dma_set_irq_lower(void) "Lower IRQ" -espdma_memory_read(uint32_t addr) "DMA read addr 0x%08x" -espdma_memory_write(uint32_t addr) "DMA write addr 0x%08x" +espdma_memory_read(uint32_t addr, int len) "DMA read addr 0x%08x len %d" +espdma_memory_write(uint32_t addr, int len) "DMA write addr 0x%08x len %d" sparc32_dma_mem_readl(uint64_t addr, uint32_t ret) "read dmareg 0x%"PRIx64": 0x%08x" sparc32_dma_mem_writel(uint64_t addr, uint32_t old, uint32_t val) "write dmareg 0x%"PRIx64": 0x%08x -> 0x%08x" sparc32_dma_enable_raise(void) "Raise DMA enable" |