usb: dwc3: expose dwc3_trb_type_string()
authorFelipe Balbi <felipe.balbi@linux.intel.com>
Fri, 31 Mar 2017 11:44:09 +0000 (14:44 +0300)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Tue, 11 Apr 2017 07:58:26 +0000 (10:58 +0300)
That helper can be used from our tracepoint interface with very minor
edits. Let's do so.

Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/dwc3/debug.h
drivers/usb/dwc3/debugfs.c
drivers/usb/dwc3/trace.h

index eeed4ff..cb2d8d3 100644 (file)
@@ -124,6 +124,34 @@ dwc3_gadget_link_string(enum dwc3_link_state link_state)
        }
 }
 
+/**
+ * dwc3_trb_type_string - returns TRB type as a string
+ * @type: the type of the TRB
+ */
+static inline const char *dwc3_trb_type_string(unsigned int type)
+{
+       switch (type) {
+       case DWC3_TRBCTL_NORMAL:
+               return "normal";
+       case DWC3_TRBCTL_CONTROL_SETUP:
+               return "setup";
+       case DWC3_TRBCTL_CONTROL_STATUS2:
+               return "status2";
+       case DWC3_TRBCTL_CONTROL_STATUS3:
+               return "status3";
+       case DWC3_TRBCTL_CONTROL_DATA:
+               return "data";
+       case DWC3_TRBCTL_ISOCHRONOUS_FIRST:
+               return "isoc-first";
+       case DWC3_TRBCTL_ISOCHRONOUS:
+               return "isoc";
+       case DWC3_TRBCTL_LINK_TRB:
+               return "link";
+       default:
+               return "UNKNOWN";
+       }
+}
+
 static inline const char *dwc3_ep0_state_string(enum dwc3_ep0_state state)
 {
        switch (state) {
index 3606c28..b53ca3b 100644 (file)
@@ -644,30 +644,6 @@ out:
        return 0;
 }
 
-static inline const char *dwc3_trb_type_string(struct dwc3_trb *trb)
-{
-       switch (DWC3_TRBCTL_TYPE(trb->ctrl)) {
-       case DWC3_TRBCTL_NORMAL:
-               return "normal";
-       case DWC3_TRBCTL_CONTROL_SETUP:
-               return "setup";
-       case DWC3_TRBCTL_CONTROL_STATUS2:
-               return "status2";
-       case DWC3_TRBCTL_CONTROL_STATUS3:
-               return "status3";
-       case DWC3_TRBCTL_CONTROL_DATA:
-               return "data";
-       case DWC3_TRBCTL_ISOCHRONOUS_FIRST:
-               return "isoc-first";
-       case DWC3_TRBCTL_ISOCHRONOUS:
-               return "isoc";
-       case DWC3_TRBCTL_LINK_TRB:
-               return "link";
-       default:
-               return "UNKNOWN";
-       }
-}
-
 static int dwc3_ep_trb_ring_show(struct seq_file *s, void *unused)
 {
        struct dwc3_ep          *dep = s->private;
@@ -688,10 +664,11 @@ static int dwc3_ep_trb_ring_show(struct seq_file *s, void *unused)
 
        for (i = 0; i < DWC3_TRB_NUM; i++) {
                struct dwc3_trb *trb = &dep->trb_pool[i];
+               unsigned int type = DWC3_TRBCTL_TYPE(trb->ctrl);
 
                seq_printf(s, "%08x%08x,%d,%s,%d,%d,%d,%d,%d,%d\n",
                                trb->bph, trb->bpl, trb->size,
-                               dwc3_trb_type_string(trb),
+                               dwc3_trb_type_string(type),
                                !!(trb->ctrl & DWC3_TRB_CTRL_IOC),
                                !!(trb->ctrl & DWC3_TRB_CTRL_ISP_IMI),
                                !!(trb->ctrl & DWC3_TRB_CTRL_CSP),
index fd5fc91..f1bd444 100644 (file)
@@ -273,36 +273,7 @@ DECLARE_EVENT_CLASS(dwc3_log_trb,
                __entry->ctrl & DWC3_TRB_CTRL_CSP ? 'S' : 's',
                __entry->ctrl & DWC3_TRB_CTRL_ISP_IMI ? 'S' : 's',
                __entry->ctrl & DWC3_TRB_CTRL_IOC ? 'C' : 'c',
-               ({char *s;
-               switch (__entry->ctrl & 0x3f0) {
-               case DWC3_TRBCTL_NORMAL:
-                       s = "normal";
-                       break;
-               case DWC3_TRBCTL_CONTROL_SETUP:
-                       s = "setup";
-                       break;
-               case DWC3_TRBCTL_CONTROL_STATUS2:
-                       s = "status2";
-                       break;
-               case DWC3_TRBCTL_CONTROL_STATUS3:
-                       s = "status3";
-                       break;
-               case DWC3_TRBCTL_CONTROL_DATA:
-                       s = "data";
-                       break;
-               case DWC3_TRBCTL_ISOCHRONOUS_FIRST:
-                       s = "isoc-first";
-                       break;
-               case DWC3_TRBCTL_ISOCHRONOUS:
-                       s = "isoc";
-                       break;
-               case DWC3_TRBCTL_LINK_TRB:
-                       s = "link";
-                       break;
-               default:
-                       s = "UNKNOWN";
-                       break;
-               } s; })
+                 dwc3_trb_type_string(DWC3_TRBCTL_TYPE(__entry->ctrl))
        )
 );