qemu with hax to log dma reads & writes jcs.org/2018/11/12/vfio

sdbus: add trace events

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Alistair Francis <alistair.francis@xilinx.com>
Message-Id: <20180208164818.7961-21-f4bug@amsat.org>

authored by

Philippe Mathieu-Daudé and committed by
Paolo Bonzini
238cd935 ea55a221

+17 -2
+12 -2
hw/sd/core.c
··· 23 23 #include "hw/qdev-core.h" 24 24 #include "sysemu/block-backend.h" 25 25 #include "hw/sd/sd.h" 26 + #include "trace.h" 27 + 28 + static inline const char *sdbus_name(SDBus *sdbus) 29 + { 30 + return sdbus->qbus.name; 31 + } 26 32 27 33 static SDState *get_card(SDBus *sdbus) 28 34 { ··· 39 45 { 40 46 SDState *card = get_card(sdbus); 41 47 48 + trace_sdbus_command(sdbus_name(sdbus), req->cmd, req->arg, req->crc); 42 49 if (card) { 43 50 SDCardClass *sc = SD_CARD_GET_CLASS(card); 44 51 ··· 52 59 { 53 60 SDState *card = get_card(sdbus); 54 61 62 + trace_sdbus_write(sdbus_name(sdbus), value); 55 63 if (card) { 56 64 SDCardClass *sc = SD_CARD_GET_CLASS(card); 57 65 ··· 62 70 uint8_t sdbus_read_data(SDBus *sdbus) 63 71 { 64 72 SDState *card = get_card(sdbus); 73 + uint8_t value = 0; 65 74 66 75 if (card) { 67 76 SDCardClass *sc = SD_CARD_GET_CLASS(card); 68 77 69 - return sc->read_data(card); 78 + value = sc->read_data(card); 70 79 } 80 + trace_sdbus_read(sdbus_name(sdbus), value); 71 81 72 - return 0; 82 + return value; 73 83 } 74 84 75 85 bool sdbus_data_ready(SDBus *sdbus)
+5
hw/sd/trace-events
··· 1 1 # See docs/devel/tracing.txt for syntax documentation. 2 2 3 + # hw/sd/core.c 4 + sdbus_command(const char *bus_name, uint8_t cmd, uint32_t arg, uint8_t crc) "@%s CMD%02d arg 0x%08x crc 0x%02x" 5 + sdbus_read(const char *bus_name, uint8_t value) "@%s value 0x%02x" 6 + sdbus_write(const char *bus_name, uint8_t value) "@%s value 0x%02x" 7 + 3 8 # hw/sd/sdhci.c 4 9 sdhci_set_inserted(const char *level) "card state changed: %s" 5 10 sdhci_send_command(uint8_t cmd, uint32_t arg) "CMD%02u ARG[0x%08x]"