diff --git a/configs/sama5d3x-ek/src/sam_nsh.c b/configs/sama5d3x-ek/src/sam_nsh.c index 648a015a6f6..def86629734 100644 --- a/configs/sama5d3x-ek/src/sam_nsh.c +++ b/configs/sama5d3x-ek/src/sam_nsh.c @@ -46,12 +46,8 @@ #include #include -#ifdef CONFIG_SAMA5_SPI0 -# include -# include -# include - -# include "sam_spi.h" +#ifdef CONFIG_SYSTEM_USBMONITOR +# include #endif #include "sama5d3x-ek.h" @@ -118,7 +114,8 @@ int nsh_archinitialize(void) { -#if defined(HAVE_AT25_MTD) || defined(HAVE_HSMCI_MTD) || defined(HAVE_USBHOST) +#if defined(HAVE_AT25_MTD) || defined(HAVE_HSMCI_MTD) || defined(HAVE_USBHOST) || \ + defined(HAVE_USBMONITOR) int ret; #endif @@ -168,5 +165,15 @@ int nsh_archinitialize(void) } #endif +#ifdef HAVE_USBMONITOR + /* Start the USB Monitor */ + + ret = usbmonitor_start(0, NULL); + if (ret != OK) + { + message("nsh_archinitialize: Start USB monitor: %d\n", ret); + } +#endif + return OK; } diff --git a/configs/sama5d3x-ek/src/sama5d3x-ek.h b/configs/sama5d3x-ek/src/sama5d3x-ek.h index dd77e0f663f..dbbba55fdd0 100644 --- a/configs/sama5d3x-ek/src/sama5d3x-ek.h +++ b/configs/sama5d3x-ek/src/sama5d3x-ek.h @@ -59,6 +59,7 @@ #define HAVE_AT25_MTD 1 #define HAVE_USBHOST 1 #define HAVE_USBDEV 1 +#define HAVE_USBMONITOR 1 /* HSMCI */ /* Can't support MMC/SD if the card interface(s) are not enable */ @@ -143,6 +144,13 @@ # undef HAVE_USBHOST #endif +/* Check if we should enable the USB monitor before starting NSH */ + +#if !defined(HAVE_USBDEV) || !defined(CONFIG_USBDEV_TRACE) || \ + !defined(CONFIG_SYSTEM_USBMONITOR) +# undef HAVE_USBMONITOR +#endif + /* LEDs *****************************************************************************/ /* There are two LEDs on the SAMA5D3 series-CM board that can be controlled * by software. A blue LED is controlled via PIO pins. A red LED normally diff --git a/drivers/usbdev/Kconfig b/drivers/usbdev/Kconfig index dba90e5996c..ca1d175b207 100644 --- a/drivers/usbdev/Kconfig +++ b/drivers/usbdev/Kconfig @@ -88,7 +88,7 @@ config USBDEV_TRACE_NRECORDS config USBDEV_TRACE_STRINGS bool "Decode device controller events" default n - depends on USBDEV_TRACE + depends on USBDEV_TRACE || DEBUG_USB ---help--- If USBDEV_TRACE_STRINGS is defined, then the USB device controller driver must provide arrays of strings to support decoding of device-