diff mbox

[1/5] tpm: convert tpm_crb.c to use trace-events

Message ID 1520200587-14681-2-git-send-email-stefanb@linux.vnet.ibm.com (mailing list archive)
State New, archived
Headers show

Commit Message

Stefan Berger March 4, 2018, 9:56 p.m. UTC
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
---
 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

Comments

Philippe Mathieu-Daudé March 5, 2018, 12:08 a.m. UTC | #1
On 03/04/2018 06:56 PM, Stefan Berger wrote:
> Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

> ---
>  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
>
Dr. David Alan Gilbert March 5, 2018, 9:49 a.m. UTC | #2
* Stefan Berger (stefanb@linux.vnet.ibm.com) wrote:
> Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
> ---
>  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.

Dave

> -- 
> 2.5.5
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
Stefan Berger March 5, 2018, 12:05 p.m. UTC | #3
On 03/05/2018 04:49 AM, Dr. David Alan Gilbert wrote:
> * Stefan Berger (stefanb@linux.vnet.ibm.com) wrote:
>> Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
>> ---
>>   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.

   Stefan
Dr. David Alan Gilbert March 5, 2018, 12:07 p.m. UTC | #4
* Stefan Berger (stefanb@linux.vnet.ibm.com) wrote:
> On 03/05/2018 04:49 AM, Dr. David Alan Gilbert wrote:
> > * Stefan Berger (stefanb@linux.vnet.ibm.com) wrote:
> > > Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
> > > ---
> > >   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 / dgilbert@redhat.com / Manchester, UK
diff mbox

Patch

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