In case of periodic transfers, let's pretty print
the size field as a multiplier followed by length,
such as :

        3x 1024

instead of:

        33555456

Signed-off-by: Felipe Balbi <felipe.ba...@linux.intel.com>
---
 drivers/usb/dwc3/trace.h | 25 +++++++++++++++++++++++--
 1 file changed, 23 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/dwc3/trace.h b/drivers/usb/dwc3/trace.h
index a4ef5e7bf6b8..88ddd01c42af 100644
--- a/drivers/usb/dwc3/trace.h
+++ b/drivers/usb/dwc3/trace.h
@@ -239,6 +239,7 @@ DECLARE_EVENT_CLASS(dwc3_log_trb,
                __field(u32, bph)
                __field(u32, size)
                __field(u32, ctrl)
+               __field(u32, type)
        ),
        TP_fast_assign(
                snprintf(__get_str(name), DWC3_MSG_MAX, "%s", dep->name);
@@ -249,11 +250,31 @@ DECLARE_EVENT_CLASS(dwc3_log_trb,
                __entry->bph = trb->bph;
                __entry->size = trb->size;
                __entry->ctrl = trb->ctrl;
+               __entry->type = usb_endpoint_type(dep->endpoint.desc);
        ),
-       TP_printk("%s: %d/%d trb %p buf %08x%08x size %d ctrl %08x 
(%c%c%c%c:%c%c:%s)",
+       TP_printk("%s: %d/%d trb %p buf %08x%08x size %s%d ctrl %08x 
(%c%c%c%c:%c%c:%s)",
                __get_str(name), __entry->queued, __entry->allocated,
                __entry->trb, __entry->bph, __entry->bpl,
-               __entry->size, __entry->ctrl,
+               ({char *s;
+               int pcm = ((__entry->size >> 24) & 3) + 1;
+               switch (__entry->type) {
+               case USB_ENDPOINT_XFER_INT:
+               case USB_ENDPOINT_XFER_ISOC:
+                       switch (pcm) {
+                       case 1:
+                               s = "1x ";
+                               break;
+                       case 2:
+                               s = "2x ";
+                               break;
+                       case 3:
+                               s = "3x ";
+                               break;
+                       }
+               default:
+                       s = "";
+               } s; }),
+               DWC3_TRB_SIZE_LENGTH(__entry->size), __entry->ctrl,
                __entry->ctrl & DWC3_TRB_CTRL_HWO ? 'H' : 'h',
                __entry->ctrl & DWC3_TRB_CTRL_LST ? 'L' : 'l',
                __entry->ctrl & DWC3_TRB_CTRL_CHN ? 'C' : 'c',
-- 
2.10.1

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to