We don't need dwc3_trace() unless we're building a
kernel with CONFIG_FTRACE. This patch reduces
dwc3.ko text size a bit while also removing overhead
of dwc3_trace() calls.

   text    data     bss     dec     hex filename
  50796     581       0   51377    c8b1 drivers/usb/dwc3/dwc3.o
  43961     581       0   44542    adfe drivers/usb/dwc3/dwc3.o.patched

Signed-off-by: Felipe Balbi <felipe.ba...@linux.intel.com>
---
 drivers/usb/dwc3/Makefile | 6 +++++-
 drivers/usb/dwc3/debug.h  | 6 ++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/dwc3/Makefile b/drivers/usb/dwc3/Makefile
index 22420e17d68b..84de1e4151c4 100644
--- a/drivers/usb/dwc3/Makefile
+++ b/drivers/usb/dwc3/Makefile
@@ -3,7 +3,11 @@ CFLAGS_trace.o                         := -I$(src)
 
 obj-$(CONFIG_USB_DWC3)                 += dwc3.o
 
-dwc3-y                                 := core.o debug.o trace.o
+dwc3-y                                 := core.o
+
+ifneq ($(CONFIG_FTRACE),)
+       dwc3-y                          += debug.o trace.o
+endif
 
 ifneq ($(filter y,$(CONFIG_USB_DWC3_HOST) $(CONFIG_USB_DWC3_DUAL_ROLE)),)
        dwc3-y                          += host.o
diff --git a/drivers/usb/dwc3/debug.h b/drivers/usb/dwc3/debug.h
index b287fc6ab29e..d93780e84f07 100644
--- a/drivers/usb/dwc3/debug.h
+++ b/drivers/usb/dwc3/debug.h
@@ -344,7 +344,13 @@ static inline const char 
*dwc3_gadget_generic_cmd_status_string(int status)
        }
 }
 
+
+#if IS_ENABLED(CONFIG_FTRACE)
 void dwc3_trace(void (*trace)(struct va_format *), const char *fmt, ...);
+#else
+static inline void dwc3_trace(void (*trace)(struct va_format *), const char 
*fmt, ...)
+{  }
+#endif
 
 #ifdef CONFIG_DEBUG_FS
 extern void dwc3_debugfs_init(struct dwc3 *);
-- 
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