On Thu, Jan 11, 2018 at 12:56 PM, Philippe Mathieu-Daudé <f4...@amsat.org> wrote: > Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org>
Reviewed-by: Alistair Francis <alistair.fran...@xilinx.com> Alistair > --- > hw/sd/core.c | 14 ++++++++++++-- > hw/sd/trace-events | 5 +++++ > 2 files changed, 17 insertions(+), 2 deletions(-) > > diff --git a/hw/sd/core.c b/hw/sd/core.c > index 295dc44ab7..498284f109 100644 > --- a/hw/sd/core.c > +++ b/hw/sd/core.c > @@ -23,6 +23,12 @@ > #include "hw/qdev-core.h" > #include "sysemu/block-backend.h" > #include "hw/sd/sd.h" > +#include "trace.h" > + > +static inline const char *sdbus_name(SDBus *sdbus) > +{ > + return sdbus->qbus.name; > +} > > static SDState *get_card(SDBus *sdbus) > { > @@ -39,6 +45,7 @@ int sdbus_do_command(SDBus *sdbus, SDRequest *req, uint8_t > *response) > { > SDState *card = get_card(sdbus); > > + trace_sdbus_command(sdbus_name(sdbus), req->cmd, req->arg, req->crc); > if (card) { > SDCardClass *sc = SD_CARD_GET_CLASS(card); > > @@ -52,6 +59,7 @@ void sdbus_write_data(SDBus *sdbus, uint8_t value) > { > SDState *card = get_card(sdbus); > > + trace_sdbus_write(sdbus_name(sdbus), value); > if (card) { > SDCardClass *sc = SD_CARD_GET_CLASS(card); > > @@ -62,14 +70,16 @@ void sdbus_write_data(SDBus *sdbus, uint8_t value) > uint8_t sdbus_read_data(SDBus *sdbus) > { > SDState *card = get_card(sdbus); > + uint8_t value = 0; > > if (card) { > SDCardClass *sc = SD_CARD_GET_CLASS(card); > > - return sc->read_data(card); > + value = sc->read_data(card); > } > + trace_sdbus_read(sdbus_name(sdbus), value); > > - return 0; > + return value; > } > > bool sdbus_data_ready(SDBus *sdbus) > diff --git a/hw/sd/trace-events b/hw/sd/trace-events > index 0a121156a3..c0f51f11d4 100644 > --- a/hw/sd/trace-events > +++ b/hw/sd/trace-events > @@ -1,5 +1,10 @@ > # See docs/devel/tracing.txt for syntax documentation. > > +# hw/sd/core.c > +sdbus_command(const char *bus_name, uint8_t cmd, uint32_t arg, uint8_t crc) > "@%s CMD%02d arg 0x%08x crc 0x%02x" > +sdbus_read(const char *bus_name, uint8_t value) "@%s value 0x%02x" > +sdbus_write(const char *bus_name, uint8_t value) "@%s value 0x%02x" > + > # hw/sd/sdhci.c > sdhci_set_inserted(const char *level) "card state changed: %s" > sdhci_send_command(uint8_t cmd, uint32_t arg) "CMD%02u ARG[0x%08x]" > -- > 2.15.1 > >