* Stefan Berger ([email protected]) wrote: > On 03/05/2018 04:49 AM, Dr. David Alan Gilbert wrote: > > * Stefan Berger ([email protected]) wrote: > > > Signed-off-by: Stefan Berger <[email protected]> > > > --- > > > Makefile.objs | 1 + > > > hw/tpm/tpm_crb.c | 17 +++++------------ > > > hw/tpm/trace-events | 5 +++++ > > > 3 files changed, 11 insertions(+), 12 deletions(-) > > > create mode 100644 hw/tpm/trace-events > > > > > > diff --git a/Makefile.objs b/Makefile.objs > > > index 5dc1348..72c3d8c 100644 > > > --- a/Makefile.objs > > > +++ b/Makefile.objs > > > @@ -162,6 +162,7 @@ trace-events-subdirs += hw/alpha > > > trace-events-subdirs += hw/hppa > > > trace-events-subdirs += hw/xen > > > trace-events-subdirs += hw/ide > > > +trace-events-subdirs += hw/tpm > > > trace-events-subdirs += ui > > > trace-events-subdirs += audio > > > trace-events-subdirs += net > > > diff --git a/hw/tpm/tpm_crb.c b/hw/tpm/tpm_crb.c > > > index b5b8256..d8917cb 100644 > > > --- a/hw/tpm/tpm_crb.c > > > +++ b/hw/tpm/tpm_crb.c > > > @@ -29,6 +29,7 @@ > > > #include "sysemu/reset.h" > > > #include "tpm_int.h" > > > #include "tpm_util.h" > > > +#include "trace.h" > > > typedef struct CRBState { > > > DeviceState parent_obj; > > > @@ -44,14 +45,6 @@ typedef struct CRBState { > > > #define CRB(obj) OBJECT_CHECK(CRBState, (obj), TYPE_TPM_CRB) > > > -#define DEBUG_CRB 0 > > > - > > > -#define DPRINTF(fmt, ...) do { \ > > > - if (DEBUG_CRB) { \ > > > - printf(fmt, ## __VA_ARGS__); \ > > > - } \ > > > - } while (0) > > > - > > > #define CRB_INTF_TYPE_CRB_ACTIVE 0b1 > > > #define CRB_INTF_VERSION_CRB 0b1 > > > #define CRB_INTF_CAP_LOCALITY_0_ONLY 0b0 > > > @@ -91,8 +84,8 @@ static uint64_t tpm_crb_mmio_read(void *opaque, hwaddr > > > addr, > > > unsigned offset = addr & 3; > > > uint32_t val = *(uint32_t *)regs >> (8 * offset); > > > - DPRINTF("CRB read 0x" TARGET_FMT_plx " len:%u val: 0x%" PRIx32 "\n", > > > - addr, size, val); > > > + trace_tpm_crb_mmio_read(addr, size, val); > > > + > > > return val; > > > } > > > @@ -100,8 +93,8 @@ static void tpm_crb_mmio_write(void *opaque, hwaddr > > > addr, > > > uint64_t val, unsigned size) > > > { > > > CRBState *s = CRB(opaque); > > > - DPRINTF("CRB write 0x" TARGET_FMT_plx " len:%u val: 0x%" PRIx64 "\n", > > > - addr, size, val); > > > + > > > + trace_tpm_crb_mmio_write(addr, size, val); > > > switch (addr) { > > > case A_CRB_CTRL_REQ: > > > diff --git a/hw/tpm/trace-events b/hw/tpm/trace-events > > > new file mode 100644 > > > index 0000000..336b06d > > > --- /dev/null > > > +++ b/hw/tpm/trace-events > > > @@ -0,0 +1,5 @@ > > > +# See docs/devel/tracing.txt for syntax documentation. > > > + > > > +# hw/tpm/tpm_crb.c > > > +tpm_crb_mmio_read(uint64_t addr, unsigned size, uint32_t val) "CRB read > > > 0x" TARGET_FMT_plx " len:%u val: 0x%" PRIx32 > > > +tpm_crb_mmio_write(uint64_t addr, unsigned size, uint32_t val) "CRB > > > write 0x" TARGET_FMT_plx " len:%u val: 0x%" PRIx32 > > Have you checked that builds OK on 32bit? I think you'll need to use > > PRIx64 there since the trace makes you use the uint64_t parameter. > > It builds fines as it is.
OK, fair enough. Dave > Stefan > -- Dr. David Alan Gilbert / [email protected] / Manchester, UK
