Skip to contentSkip to conversation

usb: MUSB gadget config provisions

PATCH New Hans de Goede 3 participants 13 messages Aug 4, 2015

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

v2 cover usb: MUSB gadget config provisions

Hi Marek and Paul,

Here is a new version of Paul's MUSB gadget Kconfig changes based on the latest master. I've dropped the dependency on the Kconfig-menu changes since similar changes for drivers/usb/Kconfig have already landed in master via the "arm: mx6: cm-fx6" changes. Likewise I've dropped the 2 patches related to moving the USB_KEYBOARD Kconfig from board/sunxi/Kconfig to drivers/usb/Kconfig, as the "arm: mx6: cm-fx6" changes already add a USB_KEYBOARD Kconfig option to drivers/usb/Kconfig. I've replaced this 2 with a patch of my own simply dropping the duplicate USB_KEYBOARD option from board/sunxi/Kconfig.

Marek, this version sits direct on top of current master, so you should be able to take it right away, then maybe we can get these changes in before things change underneath us again (lots of Kconfig churn lately).

Regards,

Hans

#1 lore raw

PATCH v2 1/10 usb: USB_ARCH_HAS_HCD Kconfig option removal

From: Paul Kocialkowski <[email protected]>

The USB_ARCH_HAS_HCD currently serves no purpose and adds some confusion to the required Kconfig options that are required to have USB support.

Dropping it makes things easier and doesn't break anything, since it was unused anyways.

---
 drivers/usb/Kconfig | 3 ---
 1 file changed, 3 deletions(-)
drivers/usb/Kconfig +0 -3
index 716dad4..fed510b 100644
@@ -1,10 +1,7 @@
 menu USB
-config USB_ARCH_HAS_HCD
-	def_bool y
 
 config USB
 	bool "Support for Host-side USB"
-	depends on USB_ARCH_HAS_HCD
 	---help---
 	  Universal Serial Bus (USB) is a specification for a serial bus
 	  subsystem which offers higher speeds and more features than the
Signature · 1 line
2.4.3
#2 lore raw

PATCH v2 2/10 usb: Generic USB Kconfig option, that fits both host and gadget and comments

In reply to Hans de Goede

From: Paul Kocialkowski <[email protected]>

There is no particular reason why the USB Kconfig option should be specific to host mode. In prevision of adding MUSB host and gadget to Kconfig, this moves the title and help message of the USB Kconfig option to a more generic format.

Adding comments to the usb Kconfig allows for a better separation and more readability in generated configs and in menuconfig.

---
 drivers/usb/Kconfig | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)
drivers/usb/Kconfig +8 -7
index fed510b..adce3f6 100644
@@ -1,7 +1,5 @@
-menu USB
-
-config USB
-	bool "Support for Host-side USB"
+menuconfig USB
+	bool "USB support"
 	---help---
 	  Universal Serial Bus (USB) is a specification for a serial bus
 	  subsystem which offers higher speeds and more features than the
@@ -15,8 +13,10 @@ config USB
 	  such as scanners, keyboards, mice, modems, cameras, disks,
 	  flash memory, network links, and printers to the PC.
 
-	  Say Y here if your computer has a host-side USB port and you want
-	  to use USB devices.  You then need to say Y to at least one of the
+	  Say Y here if your device has an USB port, either host, peripheral or
+	  dual-role.
+
+	  For an USB host port, you then need to say Y to at least one of the
 	  Host Controller Driver (HCD) options below.  Choose a USB 1.1
 	  controller, such as "UHCI HCD support" or "OHCI HCD support",
 	  and "EHCI HCD (USB 2.0) support" except for older systems that
@@ -51,6 +51,8 @@ source "drivers/usb/host/Kconfig"
 
 source "drivers/usb/emul/Kconfig"
 
+comment "USB peripherals"
+
 config USB_STORAGE
 	bool "USB Mass Storage support"
 	---help---
@@ -85,4 +87,3 @@ endchoice
 endif
 
 endif
-endmenu
Signature · 1 line
2.4.3
#3 lore raw

PATCH v2 3/10 usb: musb-new: CONFIG_MUSB prefix replacement with CONFIG_USB_MUSB

In reply to Hans de Goede

From: Paul Kocialkowski <[email protected]>

USB-related options are usually prefixed with CONFIG_USB and platform-specific adaptation for the MUSB controller already have a CONFIG_USB_MUSB prefix, so this switches all MUSB-related options to a CONFIG_USB_MUSB prefix, for consistency.

---
 arch/arm/cpu/armv7/am33xx/board.c         |  2 +-
 arch/arm/include/asm/arch-sunxi/usb_phy.h |  2 +-
 board/birdland/bav335x/board.c            |  2 +-
 board/compulab/cm_t3517/cm_t3517.c        |  6 +++---
 board/logicpd/am3517evm/am3517evm.c       |  8 ++++----
 board/phytec/pcm051/board.c               |  2 +-
 board/siemens/draco/board.c               |  2 +-
 board/siemens/pxm2/board.c                |  2 +-
 board/siemens/rut/board.c                 |  2 +-
 board/ti/am335x/board.c                   |  2 +-
 board/ti/beagle/beagle.c                  |  8 ++++----
 board/vscom/baltos/board.c                |  2 +-
 drivers/usb/gadget/gadget_chips.h         |  2 +-
 drivers/usb/musb-new/Makefile             |  6 +++---
 drivers/usb/musb-new/musb_core.c          | 12 ++++++------
 drivers/usb/musb-new/musb_core.h          |  4 ++--
 drivers/usb/musb-new/musb_dma.h           |  2 +-
 drivers/usb/musb-new/musb_gadget.c        |  4 ++--
 drivers/usb/musb-new/musb_uboot.c         | 12 ++++++------
 drivers/usb/musb-new/sunxi.c              |  6 +++---
 drivers/usb/musb/Makefile                 |  4 ++--
 drivers/usb/musb/musb_core.c              |  8 ++++----
 drivers/usb/musb/musb_hcd.c               |  6 +++---
 drivers/usb/musb/musb_hcd.h               |  4 ++--
 include/configs/am335x_evm.h              | 16 ++++++++--------
 include/configs/am3517_crane.h            | 14 +++++++-------
 include/configs/am3517_evm.h              | 16 ++++++++--------
 include/configs/baltos.h                  | 16 ++++++++--------
 include/configs/bav335x.h                 | 16 ++++++++--------
 include/configs/bf526-ezbrd.h             |  4 ++--
 include/configs/bf527-ezkit.h             |  4 ++--
 include/configs/bf548-ezkit.h             |  4 ++--
 include/configs/cam_enc_4xx.h             |  2 +-
 include/configs/cm_t35.h                  |  2 +-
 include/configs/cm_t3517.h                |  4 ++--
 include/configs/da830evm.h                | 10 +++++-----
 include/configs/davinci_dm355evm.h        |  4 ++--
 include/configs/davinci_dm365evm.h        | 10 +++++-----
 include/configs/davinci_dvevm.h           |  4 ++--
 include/configs/kwb.h                     | 10 +++++-----
 include/configs/nokia_rx51.h              |  4 ++--
 include/configs/omap3_beagle.h            |  4 ++--
 include/configs/omap3_evm.h               |  8 ++++----
 include/configs/omap3_evm_common.h        |  8 ++++----
 include/configs/omap3_igep00x0.h          |  2 +-
 include/configs/omap3_mvblx.h             |  2 +-
 include/configs/omap3_zoom1.h             |  2 +-
 include/configs/pcm051.h                  | 12 ++++++------
 include/configs/pengwyn.h                 | 12 ++++++------
 include/configs/siemens-am33x-common.h    | 14 +++++++-------
 include/configs/sunxi-common.h            |  4 ++--
 include/configs/ti_omap4_common.h         |  2 +-
 include/configs/tseries.h                 | 10 +++++-----
 include/usb.h                             |  4 ++--
 54 files changed, 167 insertions(+), 167 deletions(-)
arch/arm/cpu/armv7/am33xx/board.c +1 -1
index 67bef23..377c611 100644
@@ -124,7 +124,7 @@ int cpu_mmc_init(bd_t *bis)
 #endif
 
 /* AM33XX has two MUSB controllers which can be host or gadget */
-#if (defined(CONFIG_MUSB_GADGET) || defined(CONFIG_MUSB_HOST)) && \
+#if (defined(CONFIG_USB_MUSB_GADGET) || defined(CONFIG_USB_MUSB_HOST)) && \
 	(defined(CONFIG_AM335X_USB0) || defined(CONFIG_AM335X_USB1))
 static struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
 
arch/arm/include/asm/arch-sunxi/usb_phy.h +1 -1
index 17d31b8..cef6c98 100644
@@ -21,7 +21,7 @@ int sunxi_usb_phy_id_detect(int index);
 void sunxi_usb_phy_enable_squelch_detect(int index, int enable);
 
 /* Not really phy related, but we have to declare this somewhere ... */
-#if defined(CONFIG_MUSB_HOST) || defined(CONFIG_MUSB_GADGET)
+#if defined(CONFIG_USB_MUSB_HOST) || defined(CONFIG_USB_MUSB_GADGET)
 void sunxi_musb_board_init(void);
 #else
 #define sunxi_musb_board_init()
board/birdland/bav335x/board.c +1 -1
index 32ff7a4..67aca3c 100644
@@ -363,7 +363,7 @@ static struct cpsw_platform_data cpsw_data = {
 #if ((defined(CONFIG_SPL_ETH_SUPPORT) || defined(CONFIG_SPL_USBETH_SUPPORT)) &&\
 		defined(CONFIG_SPL_BUILD)) || \
 	((defined(CONFIG_DRIVER_TI_CPSW) || \
-	  defined(CONFIG_USB_ETHER) && defined(CONFIG_MUSB_GADGET)) && \
+	  defined(CONFIG_USB_ETHER) && defined(CONFIG_USB_MUSB_GADGET)) && \
 	 !defined(CONFIG_SPL_BUILD))
 int board_eth_init(bd_t *bis)
 {
board/compulab/cm_t3517/cm_t3517.c +3 -3
index 03b2bad..b33522e 100644
@@ -50,12 +50,12 @@ static struct omap_musb_board_data cm_t3517_musb_board_data = {
 };
 
 static struct musb_hdrc_platform_data cm_t3517_musb_pdata = {
-#if defined(CONFIG_MUSB_HOST)
+#if defined(CONFIG_USB_MUSB_HOST)
 	.mode           = MUSB_HOST,
-#elif defined(CONFIG_MUSB_GADGET)
+#elif defined(CONFIG_USB_MUSB_GADGET)
 	.mode		= MUSB_PERIPHERAL,
 #else
-#error "Please define either CONFIG_MUSB_HOST or CONFIG_MUSB_GADGET"
+#error "Please define either CONFIG_USB_MUSB_HOST or CONFIG_USB_MUSB_GADGET"
 #endif
 	.config         = &cm_t3517_musb_config,
 	.power          = 250,
board/logicpd/am3517evm/am3517evm.c +4 -4
index 24be6ea..24ff9c3 100644
@@ -65,12 +65,12 @@ static struct omap_musb_board_data musb_board_data = {
 };
 
 static struct musb_hdrc_platform_data musb_plat = {
-#if defined(CONFIG_MUSB_HOST)
+#if defined(CONFIG_USB_MUSB_HOST)
 	.mode           = MUSB_HOST,
-#elif defined(CONFIG_MUSB_GADGET)
+#elif defined(CONFIG_USB_MUSB_GADGET)
 	.mode		= MUSB_PERIPHERAL,
 #else
-#error "Please define either CONFIG_MUSB_HOST or CONFIG_MUSB_GADGET"
+#error "Please define either CONFIG_USB_MUSB_HOST or CONFIG_USB_MUSB_GADGET"
 #endif
 	.config         = &musb_config,
 	.power          = 250,
@@ -159,7 +159,7 @@ int board_mmc_init(bd_t *bis)
 }
 #endif
 
-#if defined(CONFIG_USB_ETHER) && defined(CONFIG_MUSB_GADGET)
+#if defined(CONFIG_USB_ETHER) && defined(CONFIG_USB_MUSB_GADGET)
 int board_eth_init(bd_t *bis)
 {
 	int rv, n = 0;
board/phytec/pcm051/board.c +1 -1
index 1bf9d73..4f3853a 100644
@@ -208,7 +208,7 @@ static struct cpsw_platform_data cpsw_data = {
 #endif
 
 #if defined(CONFIG_DRIVER_TI_CPSW) || \
-	(defined(CONFIG_USB_ETHER) && defined(CONFIG_MUSB_GADGET))
+	(defined(CONFIG_USB_ETHER) && defined(CONFIG_USB_MUSB_GADGET))
 int board_eth_init(bd_t *bis)
 {
 	int rv, n = 0;
board/siemens/draco/board.c +1 -1
index 2697762..4882314 100644
@@ -267,7 +267,7 @@ static struct cpsw_platform_data cpsw_data = {
 };
 
 #if defined(CONFIG_DRIVER_TI_CPSW) || \
-	(defined(CONFIG_USB_ETHER) && defined(CONFIG_MUSB_GADGET))
+	(defined(CONFIG_USB_ETHER) && defined(CONFIG_USB_MUSB_GADGET))
 int board_eth_init(bd_t *bis)
 {
 	struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
board/siemens/pxm2/board.c +1 -1
index 4d8ba3c..750f338 100644
@@ -213,7 +213,7 @@ static struct cpsw_platform_data cpsw_data = {
 #endif /* #if (defined(CONFIG_DRIVER_TI_CPSW) && !defined(CONFIG_SPL_BUILD)) */
 
 #if defined(CONFIG_DRIVER_TI_CPSW) || \
-	(defined(CONFIG_USB_ETHER) && defined(CONFIG_MUSB_GADGET))
+	(defined(CONFIG_USB_ETHER) && defined(CONFIG_USB_MUSB_GADGET))
 int board_eth_init(bd_t *bis)
 {
 	int n = 0;
board/siemens/rut/board.c +1 -1
index fb840f7..f94e3e5 100644
@@ -174,7 +174,7 @@ static struct cpsw_platform_data cpsw_data = {
 };
 
 #if defined(CONFIG_DRIVER_TI_CPSW) || \
-	(defined(CONFIG_USB_ETHER) && defined(CONFIG_MUSB_GADGET))
+	(defined(CONFIG_USB_ETHER) && defined(CONFIG_USB_MUSB_GADGET))
 int board_eth_init(bd_t *bis)
 {
 	struct ctrl_dev *cdev = (struct ctrl_dev *)CTRL_DEVICE_BASE;
board/ti/am335x/board.c +1 -1
index 96245a3..1dc2ed0 100644
@@ -569,7 +569,7 @@ static struct cpsw_platform_data cpsw_data = {
 #if ((defined(CONFIG_SPL_ETH_SUPPORT) || defined(CONFIG_SPL_USBETH_SUPPORT)) \
 		&& defined(CONFIG_SPL_BUILD)) || \
 	((defined(CONFIG_DRIVER_TI_CPSW) || \
-	  defined(CONFIG_USB_ETHER) && defined(CONFIG_MUSB_GADGET)) && \
+	  defined(CONFIG_USB_ETHER) && defined(CONFIG_USB_MUSB_GADGET)) && \
 	 !defined(CONFIG_SPL_BUILD))
 int board_eth_init(bd_t *bis)
 {
board/ti/beagle/beagle.c +4 -4
index 7b37fbe..3b0a9e7 100644
@@ -306,12 +306,12 @@ static struct omap_musb_board_data musb_board_data = {
 };
 
 static struct musb_hdrc_platform_data musb_plat = {
-#if defined(CONFIG_MUSB_HOST)
+#if defined(CONFIG_USB_MUSB_HOST)
 	.mode           = MUSB_HOST,
-#elif defined(CONFIG_MUSB_GADGET)
+#elif defined(CONFIG_USB_MUSB_GADGET)
 	.mode		= MUSB_PERIPHERAL,
 #else
-#error "Please define either CONFIG_MUSB_HOST or CONFIG_MUSB_GADGET"
+#error "Please define either CONFIG_USB_MUSB_HOST or CONFIG_USB_MUSB_GADGET"
 #endif
 	.config         = &musb_config,
 	.power          = 100,
@@ -568,7 +568,7 @@ int ehci_hcd_stop(int index)
 
 #endif /* CONFIG_USB_EHCI */
 
-#if defined(CONFIG_USB_ETHER) && defined(CONFIG_MUSB_GADGET)
+#if defined(CONFIG_USB_ETHER) && defined(CONFIG_USB_MUSB_GADGET)
 int board_eth_init(bd_t *bis)
 {
 	return usb_eth_initialize(bis);
board/vscom/baltos/board.c +1 -1
index 09bc8c6..638d14f 100644
@@ -407,7 +407,7 @@ static struct cpsw_platform_data cpsw_data = {
 #if ((defined(CONFIG_SPL_ETH_SUPPORT) || defined(CONFIG_SPL_USBETH_SUPPORT)) \
 		&& defined(CONFIG_SPL_BUILD)) || \
 	((defined(CONFIG_DRIVER_TI_CPSW) || \
-	  defined(CONFIG_USB_ETHER) && defined(CONFIG_MUSB_GADGET)) && \
+	  defined(CONFIG_USB_ETHER) && defined(CONFIG_USB_MUSB_GADGET)) && \
 	 !defined(CONFIG_SPL_BUILD))
 int board_eth_init(bd_t *bis)
 {
drivers/usb/gadget/gadget_chips.h +1 -1
index c859df2..e9811c3 100644
@@ -125,7 +125,7 @@
 #endif
 
 /* Mentor high speed "dual role" controller, in peripheral role */
-#ifdef CONFIG_MUSB_GADGET
+#ifdef CONFIG_USB_MUSB_GADGET
 #define gadget_is_musbhdrc(g)	(!strcmp("musb-hdrc", (g)->name))
 #else
 #define gadget_is_musbhdrc(g)	0
drivers/usb/musb-new/Makefile +3 -3
index 9edeece..fd9df72 100644
@@ -2,9 +2,9 @@
 # for USB OTG silicon based on Mentor Graphics INVENTRA designs
 #
 
-obj-$(CONFIG_MUSB_GADGET) += musb_gadget.o musb_gadget_ep0.o musb_core.o
-obj-$(CONFIG_MUSB_GADGET) += musb_uboot.o
-obj-$(CONFIG_MUSB_HOST) += musb_host.o musb_core.o musb_uboot.o
+obj-$(CONFIG_USB_MUSB_GADGET) += musb_gadget.o musb_gadget_ep0.o musb_core.o
+obj-$(CONFIG_USB_MUSB_GADGET) += musb_uboot.o
+obj-$(CONFIG_USB_MUSB_HOST) += musb_host.o musb_core.o musb_uboot.o
 obj-$(CONFIG_USB_MUSB_DSPS) += musb_dsps.o
 obj-$(CONFIG_USB_MUSB_AM35X) += am35x.o
 obj-$(CONFIG_USB_MUSB_OMAP2PLUS) += omap2430.o
drivers/usb/musb-new/musb_core.c +6 -6
index f530af4..411e5a0 100644
@@ -1437,7 +1437,7 @@ static int __devinit musb_core_init(u16 musb_type, struct musb *musb)
 		strcat(aInfo, ", dyn FIFOs");
 		musb->dyn_fifo = true;
 	}
-#ifndef CONFIG_MUSB_DISABLE_BULK_COMBINE_SPLIT
+#ifndef CONFIG_USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
 	if (reg & MUSB_CONFIGDATA_MPRXE) {
 		strcat(aInfo, ", bulk combine");
 		musb->bulk_combine = true;
@@ -1662,7 +1662,7 @@ irqreturn_t musb_interrupt(struct musb *musb)
 }
 EXPORT_SYMBOL_GPL(musb_interrupt);
 
-#ifndef CONFIG_MUSB_PIO_ONLY
+#ifndef CONFIG_USB_MUSB_PIO_ONLY
 static bool __devinitdata use_dma = 1;
 
 /* "modprobe ... use_dma=0" etc */
@@ -2011,7 +2011,7 @@ musb_init_controller(struct musb_hdrc_platform_data *plat, struct device *dev,
 
 	pm_runtime_get_sync(musb->controller);
 
-#ifndef CONFIG_MUSB_PIO_ONLY
+#ifndef CONFIG_USB_MUSB_PIO_ONLY
 	if (use_dma && dev->dma_mask) {
 		struct dma_controller	*c;
 
@@ -2194,7 +2194,7 @@ fail0:
  * bridge to a platform device; this driver then suffices.
  */
 
-#ifndef CONFIG_MUSB_PIO_ONLY
+#ifndef CONFIG_USB_MUSB_PIO_ONLY
 static u64	*orig_dma_mask;
 #endif
 
@@ -2217,7 +2217,7 @@ static int __devinit musb_probe(struct platform_device *pdev)
 		return -ENOMEM;
 	}
 
-#ifndef CONFIG_MUSB_PIO_ONLY
+#ifndef CONFIG_USB_MUSB_PIO_ONLY
 	/* clobbered by use_dma=n */
 	orig_dma_mask = dev->dma_mask;
 #endif
@@ -2244,7 +2244,7 @@ static int __devexit musb_remove(struct platform_device *pdev)
 	musb_free(musb);
 	iounmap(ctrl_base);
 	device_init_wakeup(&pdev->dev, 0);
-#ifndef CONFIG_MUSB_PIO_ONLY
+#ifndef CONFIG_USB_MUSB_PIO_ONLY
 	pdev->dev.dma_mask = orig_dma_mask;
 #endif
 	return 0;
drivers/usb/musb-new/musb_core.h +2 -2
index 8727f64..c818040 100644
@@ -97,7 +97,7 @@ struct musb_ep;
 #ifndef __UBOOT__
 #define	is_peripheral_capable()	(1)
 #else
-#ifdef CONFIG_MUSB_GADGET
+#ifdef CONFIG_USB_MUSB_GADGET
 #define	is_peripheral_capable()	(1)
 #else
 #define	is_peripheral_capable()	(0)
@@ -118,7 +118,7 @@ extern void musb_g_disconnect(struct musb *);
 #ifndef __UBOOT__
 #define	is_host_capable()	(1)
 #else
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 #define	is_host_capable()	(1)
 #else
 #define	is_host_capable()	(0)
drivers/usb/musb-new/musb_dma.h +1 -1
index 3a97c4e..17fe89f 100644
@@ -62,7 +62,7 @@ struct musb_hw_ep;
 
 #define	DMA_ADDR_INVALID	(~(dma_addr_t)0)
 
-#ifndef CONFIG_MUSB_PIO_ONLY
+#ifndef CONFIG_USB_MUSB_PIO_ONLY
 #define	is_dma_capable()	(1)
 #else
 #define	is_dma_capable()	(0)
drivers/usb/musb-new/musb_gadget.c +2 -2
index 97acf93..309dc7f 100644
@@ -99,7 +99,7 @@
 #define is_buffer_mapped(req) (is_dma_capable() && \
 					(req->map_state != UN_MAPPED))
 
-#ifndef CONFIG_MUSB_PIO_ONLY
+#ifndef CONFIG_USB_MUSB_PIO_ONLY
 /* Maps the buffer to dma  */
 
 static inline void map_dma_buffer(struct musb_request *request,
@@ -382,7 +382,7 @@ static void txstate(struct musb *musb, struct musb_request *req)
 			epnum, musb_ep->packet_sz, fifo_count,
 			csr);
 
-#ifndef	CONFIG_MUSB_PIO_ONLY
+#ifndef	CONFIG_USB_MUSB_PIO_ONLY
 	if (is_buffer_mapped(req)) {
 		struct dma_controller	*c = musb->dma_controller;
 		size_t request_size;
drivers/usb/musb-new/musb_uboot.c +6 -6
index 9b56e90..10f6b5d 100644
@@ -15,7 +15,7 @@
 #include "musb_gadget.h"
 #include "musb_uboot.h"
 
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 struct int_queue {
 	struct usb_host_endpoint hep;
 	struct urb urb;
@@ -368,9 +368,9 @@ struct dm_usb_ops musb_usb_ops = {
 	.reset_root_port = musb_reset_root_port,
 };
 #endif /* CONFIG_DM_USB */
-#endif /* CONFIG_MUSB_HOST */
+#endif /* CONFIG_USB_MUSB_HOST */
 
-#ifdef CONFIG_MUSB_GADGET
+#ifdef CONFIG_USB_MUSB_GADGET
 static struct musb *gadget;
 
 int usb_gadget_handle_interrupts(int index)
@@ -420,7 +420,7 @@ int usb_gadget_unregister_driver(struct usb_gadget_driver *driver)
 		driver->unbind(&gadget->g);
 	return 0;
 }
-#endif /* CONFIG_MUSB_GADGET */
+#endif /* CONFIG_USB_MUSB_GADGET */
 
 int musb_register(struct musb_hdrc_platform_data *plat, void *bdata,
 			void *ctl_regs)
@@ -428,12 +428,12 @@ int musb_register(struct musb_hdrc_platform_data *plat, void *bdata,
 	struct musb **musbp;
 
 	switch (plat->mode) {
-#if defined(CONFIG_MUSB_HOST) && !defined(CONFIG_DM_USB)
+#if defined(CONFIG_USB_MUSB_HOST) && !defined(CONFIG_DM_USB)
 	case MUSB_HOST:
 		musbp = &musb_host.host;
 		break;
 #endif
-#ifdef CONFIG_MUSB_GADGET
+#ifdef CONFIG_USB_MUSB_GADGET
 	case MUSB_PERIPHERAL:
 		musbp = &gadget;
 		break;
drivers/usb/musb-new/sunxi.c +3 -3
index 3a29b18..85ac28d 100644
@@ -286,7 +286,7 @@ static struct musb_hdrc_config musb_config = {
 };
 
 static struct musb_hdrc_platform_data musb_plat = {
-#if defined(CONFIG_MUSB_HOST)
+#if defined(CONFIG_USB_MUSB_HOST)
 	.mode           = MUSB_HOST,
 #else
 	.mode		= MUSB_PERIPHERAL,
@@ -296,7 +296,7 @@ static struct musb_hdrc_platform_data musb_plat = {
 	.platform_ops	= &sunxi_musb_ops,
 };
 
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 int musb_usb_probe(struct udevice *dev)
 {
 	struct musb_host_data *host = dev_get_priv(dev);
@@ -341,7 +341,7 @@ U_BOOT_DRIVER(usb_musb) = {
 
 void sunxi_musb_board_init(void)
 {
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 	struct udevice *dev;
 
 	/*
drivers/usb/musb/Makefile +2 -2
index 3c9ed98..bd2b7c5 100644
@@ -5,8 +5,8 @@
 # SPDX-License-Identifier:	GPL-2.0+
 #
 
-obj-$(CONFIG_MUSB_HCD) += musb_hcd.o musb_core.o
-obj-$(CONFIG_MUSB_UDC) += musb_udc.o musb_core.o
+obj-$(CONFIG_USB_MUSB_HCD) += musb_hcd.o musb_core.o
+obj-$(CONFIG_USB_MUSB_UDC) += musb_udc.o musb_core.o
 obj-$(CONFIG_USB_BLACKFIN) += blackfin_usb.o
 obj-$(CONFIG_USB_DAVINCI) += davinci.o
 obj-$(CONFIG_USB_OMAP3) += omap3.o
drivers/usb/musb/musb_core.c +4 -4
index 786909f..ea3996a 100644
@@ -19,7 +19,7 @@ struct musb_regs *musbr;
  */
 void musb_start(void)
 {
-#if defined(CONFIG_MUSB_HCD)
+#if defined(CONFIG_USB_MUSB_HCD)
 	u8 devctl;
 	u8 busctl;
 #endif
@@ -32,7 +32,7 @@ void musb_start(void)
 
 	/* put into basic highspeed mode and start session */
 	writeb(MUSB_POWER_HSENAB, &musbr->power);
-#if defined(CONFIG_MUSB_HCD)
+#if defined(CONFIG_USB_MUSB_HCD)
 	/* Program PHY to use EXT VBUS if required */
 	if (musb_cfg.extvbus == 1) {
 		busctl = musb_read_ulpi_buscontrol(musbr);
@@ -81,7 +81,7 @@ void musb_configure_ep(const struct musb_epinfo *epinfo, u8 cnt)
 			config_fifo(tx, idx, fifoaddr);
 
 			csr = readw(&musbr->txcsr);
-#if defined(CONFIG_MUSB_HCD)
+#if defined(CONFIG_USB_MUSB_HCD)
 			/* clear the data toggle bit */
 			writew(csr | MUSB_TXCSR_CLRDATATOG, &musbr->txcsr);
 #endif
@@ -94,7 +94,7 @@ void musb_configure_ep(const struct musb_epinfo *epinfo, u8 cnt)
 			config_fifo(rx, idx, fifoaddr);
 
 			csr = readw(&musbr->rxcsr);
-#if defined(CONFIG_MUSB_HCD)
+#if defined(CONFIG_USB_MUSB_HCD)
 			/* clear the data toggle bit */
 			writew(csr | MUSB_RXCSR_CLRDATATOG, &musbr->rxcsr);
 #endif
drivers/usb/musb/musb_hcd.c +3 -3
index f0ba8aa..9a3b61a 100644
@@ -117,7 +117,7 @@ static int wait_until_ep0_ready(struct usb_device *dev, u32 bit_mask)
 {
 	u16 csr;
 	int result = 1;
-	int timeout = CONFIG_MUSB_TIMEOUT;
+	int timeout = CONFIG_USB_MUSB_TIMEOUT;
 
 	while (result > 0) {
 		csr = readw(&musbr->txcsr);
@@ -179,7 +179,7 @@ static int wait_until_ep0_ready(struct usb_device *dev, u32 bit_mask)
 static int wait_until_txep_ready(struct usb_device *dev, u8 ep)
 {
 	u16 csr;
-	int timeout = CONFIG_MUSB_TIMEOUT;
+	int timeout = CONFIG_USB_MUSB_TIMEOUT;
 
 	do {
 		if (check_stall(ep, 1)) {
@@ -211,7 +211,7 @@ static int wait_until_txep_ready(struct usb_device *dev, u8 ep)
 static int wait_until_rxep_ready(struct usb_device *dev, u8 ep)
 {
 	u16 csr;
-	int timeout = CONFIG_MUSB_TIMEOUT;
+	int timeout = CONFIG_USB_MUSB_TIMEOUT;
 
 	do {
 		if (check_stall(ep, 0)) {
drivers/usb/musb/musb_hcd.h +2 -2
index 0c8e75d..831957d 100644
@@ -17,8 +17,8 @@
 extern unsigned char new[];
 #endif
 
-#ifndef CONFIG_MUSB_TIMEOUT
-# define CONFIG_MUSB_TIMEOUT 100000
+#ifndef CONFIG_USB_MUSB_TIMEOUT
+# define CONFIG_USB_MUSB_TIMEOUT 100000
 #endif
 
 /* This defines the endpoint number used for control transfers */
include/configs/am335x_evm.h +8 -8
index 633391b..e89c49e 100644
@@ -283,14 +283,14 @@
  */
 #define CONFIG_USB_MUSB_DSPS
 #define CONFIG_ARCH_MISC_INIT
-#define CONFIG_MUSB_GADGET
-#define CONFIG_MUSB_PIO_ONLY
-#define CONFIG_MUSB_DISABLE_BULK_COMBINE_SPLIT
+#define CONFIG_USB_MUSB_GADGET
+#define CONFIG_USB_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
 #define CONFIG_USB_GADGET
 #define CONFIG_USB_GADGET_DOWNLOAD
 #define CONFIG_USB_GADGET_DUALSPEED
 #define CONFIG_USB_GADGET_VBUS_DRAW	2
-#define CONFIG_MUSB_HOST
+#define CONFIG_USB_MUSB_HOST
 #define CONFIG_AM335X_USB0
 #define CONFIG_AM335X_USB0_MODE	MUSB_PERIPHERAL
 #define CONFIG_AM335X_USB1
@@ -309,12 +309,12 @@
 #define CONFIG_FASTBOOT_FLASH_MMC_DEV   1
 #endif
 
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 #define CONFIG_CMD_USB
 #define CONFIG_USB_STORAGE
 #endif
 
-#ifdef CONFIG_MUSB_GADGET
+#ifdef CONFIG_USB_MUSB_GADGET
 #define CONFIG_USB_ETHER
 #define CONFIG_USB_ETH_RNDIS
 #define CONFIG_USBNET_HOST_ADDR	"de:ad:be:af:00:00"
@@ -323,7 +323,7 @@
 #define CONFIG_G_DNL_VENDOR_NUM 0x0451
 #define CONFIG_G_DNL_PRODUCT_NUM 0xD022
 #define CONFIG_G_DNL_MANUFACTURER "Texas Instruments"
-#endif /* CONFIG_MUSB_GADGET */
+#endif /* CONFIG_USB_MUSB_GADGET */
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_USBETH_SUPPORT)
 /* Remove other SPL modes. */
@@ -333,7 +333,7 @@
 #define CONFIG_ENV_IS_NOWHERE
 #undef CONFIG_ENV_IS_IN_NAND
 /* disable host part of MUSB in SPL */
-#undef CONFIG_MUSB_HOST
+#undef CONFIG_USB_MUSB_HOST
 /* disable EFI partitions and partition UUID support */
 #undef CONFIG_PARTITION_UUIDS
 #undef CONFIG_EFI_PARTITION
include/configs/am3517_crane.h +7 -7
index 6a0240b..600fefb 100644
@@ -91,15 +91,15 @@
 
 /*
  * USB configuration
- * Enable CONFIG_MUSB_HCD for Host functionalities MSC, keyboard
- * Enable CONFIG_MUSB_UDC for Device functionalities.
+ * Enable CONFIG_USB_MUSB_HCD for Host functionalities MSC, keyboard
+ * Enable CONFIG_USB_MUSB_UDC for Device functionalities.
  */
 #define CONFIG_USB_AM35X		1
-#define CONFIG_MUSB_HCD			1
+#define CONFIG_USB_MUSB_HCD			1
 
 #ifdef CONFIG_USB_AM35X
 
-#ifdef CONFIG_MUSB_HCD
+#ifdef CONFIG_USB_MUSB_HCD
 #define CONFIG_CMD_USB
 
 #define CONFIG_USB_STORAGE
@@ -111,9 +111,9 @@
 #define CONFIG_PREBOOT "usb start"
 #endif /* CONFIG_USB_KEYBOARD */
 
-#endif /* CONFIG_MUSB_HCD */
+#endif /* CONFIG_USB_MUSB_HCD */
 
-#ifdef CONFIG_MUSB_UDC
+#ifdef CONFIG_USB_MUSB_UDC
 /* USB device configuration */
 #define CONFIG_USB_DEVICE		1
 #define CONFIG_USB_TTY			1
@@ -123,7 +123,7 @@
 #define CONFIG_USBD_PRODUCTID		0x5678
 #define CONFIG_USBD_MANUFACTURER	"Texas Instruments"
 #define CONFIG_USBD_PRODUCT_NAME	"AM3517CRANE"
-#endif /* CONFIG_MUSB_UDC */
+#endif /* CONFIG_USB_MUSB_UDC */
 
 #endif /* CONFIG_USB_AM35X */
 
include/configs/am3517_evm.h +8 -8
index e9808a7..30f31a9 100644
@@ -97,16 +97,16 @@
 
 /*
  * USB configuration
- * Enable CONFIG_MUSB_HOST for Host functionalities MSC, keyboard
- * Enable CONFIG_MUSB_GADGET for Device functionalities.
+ * Enable CONFIG_USB_MUSB_HOST for Host functionalities MSC, keyboard
+ * Enable CONFIG_USB_MUSB_GADGET for Device functionalities.
  */
 #define CONFIG_USB_MUSB_AM35X
-#define CONFIG_MUSB_HOST
-#define CONFIG_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_HOST
+#define CONFIG_USB_MUSB_PIO_ONLY
 
 #ifdef CONFIG_USB_MUSB_AM35X
 
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 #define CONFIG_CMD_USB
 
 #define CONFIG_USB_STORAGE
@@ -118,13 +118,13 @@
 #define CONFIG_PREBOOT "usb start"
 #endif /* CONFIG_USB_KEYBOARD */
 
-#endif /* CONFIG_MUSB_HOST */
+#endif /* CONFIG_USB_MUSB_HOST */
 
-#ifdef CONFIG_MUSB_GADGET
+#ifdef CONFIG_USB_MUSB_GADGET
 #define CONFIG_USB_GADGET_DUALSPEED
 #define CONFIG_USB_ETHER
 #define CONFIG_USB_ETH_RNDIS
-#endif /* CONFIG_MUSB_GADGET */
+#endif /* CONFIG_USB_MUSB_GADGET */
 
 #endif /* CONFIG_USB_MUSB_AM35X */
 
include/configs/baltos.h +8 -8
index cce5e4f..5545cf0 100644
@@ -273,25 +273,25 @@
  */
 #define CONFIG_USB_MUSB_DSPS
 #define CONFIG_ARCH_MISC_INIT
-#define CONFIG_MUSB_GADGET
-#define CONFIG_MUSB_PIO_ONLY
-#define CONFIG_MUSB_DISABLE_BULK_COMBINE_SPLIT
+#define CONFIG_USB_MUSB_GADGET
+#define CONFIG_USB_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
 #define CONFIG_USB_GADGET
 #define CONFIG_USBDOWNLOAD_GADGET
 #define CONFIG_USB_GADGET_DUALSPEED
 #define CONFIG_USB_GADGET_VBUS_DRAW	2
-#define CONFIG_MUSB_HOST
+#define CONFIG_USB_MUSB_HOST
 #define CONFIG_AM335X_USB0
 #define CONFIG_AM335X_USB0_MODE	MUSB_HOST
 #define CONFIG_AM335X_USB1
 #define CONFIG_AM335X_USB1_MODE MUSB_OTG
 
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 #define CONFIG_CMD_USB
 #define CONFIG_USB_STORAGE
 #endif
 
-#ifdef CONFIG_MUSB_GADGET
+#ifdef CONFIG_USB_MUSB_GADGET
 #define CONFIG_USB_ETHER
 #define CONFIG_USB_ETH_RNDIS
 #define CONFIG_USBNET_HOST_ADDR	"de:ad:be:af:00:00"
@@ -300,11 +300,11 @@
 #define CONFIG_G_DNL_VENDOR_NUM 0x0403
 #define CONFIG_G_DNL_PRODUCT_NUM 0xBD00
 #define CONFIG_G_DNL_MANUFACTURER "Texas Instruments"
-#endif /* CONFIG_MUSB_GADGET */
+#endif /* CONFIG_USB_MUSB_GADGET */
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_USBETH_SUPPORT)
 /* disable host part of MUSB in SPL */
-#undef CONFIG_MUSB_HOST
+#undef CONFIG_USB_MUSB_HOST
 /* disable EFI partitions and partition UUID support */
 #undef CONFIG_PARTITION_UUIDS
 #undef CONFIG_EFI_PARTITION
include/configs/bav335x.h +8 -8
index fa32fa4..9917627 100644
@@ -440,14 +440,14 @@ DEFAULT_LINUX_BOOT_ENV \
  */
 #define CONFIG_USB_MUSB_DSPS
 #define CONFIG_ARCH_MISC_INIT
-#define CONFIG_MUSB_GADGET
-#define CONFIG_MUSB_PIO_ONLY
-#define CONFIG_MUSB_DISABLE_BULK_COMBINE_SPLIT
+#define CONFIG_USB_MUSB_GADGET
+#define CONFIG_USB_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
 #define CONFIG_USB_GADGET
 #define CONFIG_USB_GADGET_DOWNLOAD
 #define CONFIG_USB_GADGET_DUALSPEED
 #define CONFIG_USB_GADGET_VBUS_DRAW	2
-#define CONFIG_MUSB_HOST
+#define CONFIG_USB_MUSB_HOST
 #define CONFIG_AM335X_USB0
 #define CONFIG_AM335X_USB0_MODE	MUSB_PERIPHERAL
 #define CONFIG_AM335X_USB1
@@ -466,12 +466,12 @@ DEFAULT_LINUX_BOOT_ENV \
 #define CONFIG_FASTBOOT_FLASH_MMC_DEV   1
 #endif
 
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 #define CONFIG_CMD_USB
 #define CONFIG_USB_STORAGE
 #endif
 
-#ifdef CONFIG_MUSB_GADGET
+#ifdef CONFIG_USB_MUSB_GADGET
 #define CONFIG_CMD_USB_MASS_STORAGE
 #define CONFIG_USB_FUNCTION_MASS_STORAGE
 
@@ -479,11 +479,11 @@ DEFAULT_LINUX_BOOT_ENV \
 #define CONFIG_G_DNL_VENDOR_NUM 0x0451
 #define CONFIG_G_DNL_PRODUCT_NUM 0xD022
 #define CONFIG_G_DNL_MANUFACTURER "Texas Instruments"
-#endif /* CONFIG_MUSB_GADGET */
+#endif /* CONFIG_USB_MUSB_GADGET */
 
 #if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_USBETH_SUPPORT)
 /* disable host part of MUSB in SPL */
-#undef CONFIG_MUSB_HOST
+#undef CONFIG_USB_MUSB_HOST
 /* disable EFI partitions and partition UUID support */
 #undef CONFIG_PARTITION_UUIDS
 #undef CONFIG_EFI_PARTITION
include/configs/bf526-ezbrd.h +2 -2
index 5767ac1..a8f0979 100644
@@ -136,10 +136,10 @@
  */
 #if !defined(__ADSPBF522__) && !defined(__ADSPBF523__)
 #define CONFIG_USB
-#define CONFIG_MUSB_HCD
+#define CONFIG_USB_MUSB_HCD
 #define CONFIG_USB_BLACKFIN
 #define CONFIG_USB_STORAGE
-#define CONFIG_MUSB_TIMEOUT 100000
+#define CONFIG_USB_MUSB_TIMEOUT 100000
 #endif
 
 
include/configs/bf527-ezkit.h +2 -2
index 28b3760..d23602b 100644
@@ -139,10 +139,10 @@
  */
 #if !defined(__ADSPBF522__) && !defined(__ADSPBF523__)
 #define CONFIG_USB
-#define CONFIG_MUSB_HCD
+#define CONFIG_USB_MUSB_HCD
 #define CONFIG_USB_BLACKFIN
 #define CONFIG_USB_STORAGE
-#define CONFIG_MUSB_TIMEOUT 100000
+#define CONFIG_USB_MUSB_TIMEOUT 100000
 #endif
 
 /* Don't waste time transferring a logo over the UART */
include/configs/bf548-ezkit.h +2 -2
index c7b44ae..f0f768a 100644
@@ -163,10 +163,10 @@
  */
 #if !defined(__ADSPBF544__)
 #define CONFIG_USB
-#define CONFIG_MUSB_HCD
+#define CONFIG_USB_MUSB_HCD
 #define CONFIG_USB_BLACKFIN
 #define CONFIG_USB_STORAGE
-#define CONFIG_MUSB_TIMEOUT 100000
+#define CONFIG_USB_MUSB_TIMEOUT 100000
 #endif
 
 
include/configs/cam_enc_4xx.h +1 -1
index 21e3a0c..3400dd4 100644
@@ -488,7 +488,7 @@
 
 /* USB Configuration */
 #define CONFIG_USB_DAVINCI
-#define CONFIG_MUSB_HCD
+#define CONFIG_USB_MUSB_HCD
 #define CONFIG_DV_USBPHY_CTL (USBPHY_SESNDEN | USBPHY_VBDTCTEN | \
 				USBPHY_PHY24MHZ)
 
include/configs/cm_t35.h +1 -1
index 41df106..6885ae1 100644
@@ -100,7 +100,7 @@
 #define CONFIG_USB_EHCI
 #define CONFIG_USB_EHCI_OMAP
 #define CONFIG_USB_STORAGE
-#define CONFIG_MUSB_UDC
+#define CONFIG_USB_MUSB_UDC
 #define CONFIG_TWL4030_USB
 #define CONFIG_CMD_USB
 
include/configs/cm_t3517.h +2 -2
index a8d0b97..cf08414 100644
@@ -112,8 +112,8 @@
 #define CONFIG_OMAP_EHCI_PHY1_RESET_GPIO 146
 #define CONFIG_OMAP_EHCI_PHY2_RESET_GPIO 147
 #else /* !CONFIG_USB_MUSB_AM35X */
-#define CONFIG_MUSB_HOST
-#define CONFIG_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_HOST
+#define CONFIG_USB_MUSB_PIO_ONLY
 #endif /* CONFIG_USB_MUSB_AM35X */
 
 #define CONFIG_USB_STORAGE
include/configs/da830evm.h +5 -5
index 729b6e7..b82140e 100644
@@ -135,7 +135,7 @@
  * USB configuration
  */
 #define CONFIG_USB_DA8XX	/* Platform hookup to MUSB controller */
-#define CONFIG_MUSB_HCD
+#define CONFIG_USB_MUSB_HCD
 
 /*
  * U-Boot general configuration
@@ -233,7 +233,7 @@
 
 #ifdef CONFIG_USB_DA8XX
 
-#ifdef CONFIG_MUSB_HCD		/* include support for usb host */
+#ifdef CONFIG_USB_MUSB_HCD		/* include support for usb host */
 #define CONFIG_CMD_USB		/* include support for usb cmd */
 
 #define CONFIG_USB_STORAGE	/* MSC class support */
@@ -244,9 +244,9 @@
 #define CONFIG_PREBOOT "usb start"
 #endif /* CONFIG_USB_KEYBOARD */
 
-#endif /* CONFIG_MUSB_HCD */
+#endif /* CONFIG_USB_MUSB_HCD */
 
-#ifdef CONFIG_MUSB_UDC
+#ifdef CONFIG_USB_MUSB_UDC
 /* USB device configuration */
 #define CONFIG_USB_DEVICE		1
 #define CONFIG_USB_TTY			1
@@ -256,7 +256,7 @@
 #define CONFIG_USBD_PRODUCTID		0x5678
 #define CONFIG_USBD_MANUFACTURER	"Texas Instruments"
 #define CONFIG_USBD_PRODUCT_NAME	"DA830EVM"
-#endif /* CONFIG_MUSB_UDC */
+#endif /* CONFIG_USB_MUSB_UDC */
 
 #endif /* CONFIG_USB_DA8XX */
 
include/configs/davinci_dm355evm.h +2 -2
index 847d788..e873fa4 100644
@@ -96,11 +96,11 @@
 #endif
 
 #ifdef CONFIG_USB_DAVINCI
-#define CONFIG_MUSB_HCD
+#define CONFIG_USB_MUSB_HCD
 #define CONFIG_CMD_USB
 #define CONFIG_USB_STORAGE
 #else
-#undef CONFIG_MUSB_HCD
+#undef CONFIG_USB_MUSB_HCD
 #undef CONFIG_CMD_USB
 #undef CONFIG_USB_STORAGE
 #endif
include/configs/davinci_dm365evm.h +5 -5
index 8b42c50..9bdd2d6 100644
@@ -78,7 +78,7 @@
 
 /* USB Configuration */
 #define CONFIG_USB_DAVINCI
-#define CONFIG_MUSB_HCD
+#define CONFIG_USB_MUSB_HCD
 
 #ifdef CONFIG_USB_DAVINCI
 #define CONFIG_CMD_USB         /* include support for usb      */
@@ -87,7 +87,7 @@
 #define CONFIG_DOS_PARTITION   /* include support for FAT/storage*/
 #endif
 
-#ifdef CONFIG_MUSB_HCD         /* include support for usb host */
+#ifdef CONFIG_USB_MUSB_HCD         /* include support for usb host */
 #define CONFIG_CMD_USB         /* include support for usb cmd */
 #define CONFIG_USB_STORAGE     /* MSC class support */
 #define CONFIG_CMD_STORAGE     /* inclue support for usb-storage cmd */
@@ -99,9 +99,9 @@
 
 #define CONFIG_PREBOOT "usb start"
 #endif /* CONFIG_USB_KEYBOARD */
-#endif /* CONFIG_MUSB_HCD */
+#endif /* CONFIG_USB_MUSB_HCD */
 
-#ifdef CONFIG_MUSB_UDC
+#ifdef CONFIG_USB_MUSB_UDC
 #define CONFIG_USB_DEVICE              1
 #define CONFIG_USB_TTY                 1
 #define CONFIG_SYS_CONSOLE_IS_IN_ENV   1
@@ -109,7 +109,7 @@
 #define CONFIG_USBD_PRODUCTID          0x5678
 #define CONFIG_USBD_MANUFACTURER       "Texas Instruments"
 #define CONFIG_USBD_PRODUCT_NAME       "DM365VM"
-#endif /* CONFIG_MUSB_UDC */
+#endif /* CONFIG_USB_MUSB_UDC */
 
 /* U-Boot command configuration */
 #define CONFIG_CMD_ASKENV
include/configs/davinci_dvevm.h +2 -2
index 6108736..35e9a15 100644
@@ -156,7 +156,7 @@
 #define CONFIG_SYS_LONGHELP
 #define CONFIG_CRC32_VERIFY
 #define CONFIG_MX_CYCLIC
-#define CONFIG_MUSB_HCD
+#define CONFIG_USB_MUSB_HCD
 #define CONFIG_USB_DAVINCI
 /*===================*/
 /* Linux Information */
@@ -194,7 +194,7 @@
 /*==========================*/
 #ifdef CONFIG_USB_DAVINCI
 #define CONFIG_CMD_USB
-#ifdef CONFIG_MUSB_HCD
+#ifdef CONFIG_USB_MUSB_HCD
 #define CONFIG_USB_STORAGE
 #define CONFIG_CMD_STORAGE
 #define CONFIG_CMD_FAT
include/configs/kwb.h +5 -5
index acff5b9..96f2e9d 100644
@@ -116,20 +116,20 @@ BUR_COMMON_ENV \
 /* USB configuration */
 #define CONFIG_USB_MUSB_DSPS
 #define CONFIG_ARCH_MISC_INIT
-#define CONFIG_MUSB_PIO_ONLY
-#define CONFIG_MUSB_DISABLE_BULK_COMBINE_SPLIT
+#define CONFIG_USB_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
 /* attention! not only for gadget, enables also highspeed in hostmode */
 #define CONFIG_USB_GADGET_DUALSPEED
-#define CONFIG_MUSB_HOST
+#define CONFIG_USB_MUSB_HOST
 #define CONFIG_AM335X_USB0
 #define CONFIG_AM335X_USB0_MODE	MUSB_HOST
 #define CONFIG_AM335X_USB1
 #define CONFIG_AM335X_USB1_MODE	MUSB_HOST
 
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 #define CONFIG_CMD_USB
 #define CONFIG_USB_STORAGE
-#endif /* CONFIG_MUSB_HOST */
+#endif /* CONFIG_USB_MUSB_HOST */
 
 #undef CONFIG_ENV_IS_NOWHERE
 #define CONFIG_ENV_IS_IN_MMC
include/configs/nokia_rx51.h +2 -2
index 6e3ce4d..7ec9965 100644
@@ -108,8 +108,8 @@
 #define CONFIG_DOS_PARTITION
 
 /* USB */
-#define CONFIG_MUSB_UDC
-#define CONFIG_MUSB_HCD
+#define CONFIG_USB_MUSB_UDC
+#define CONFIG_USB_MUSB_HCD
 #define CONFIG_USB_OMAP3
 #define CONFIG_TWL4030_USB
 
include/configs/omap3_beagle.h +2 -2
index 804e307..dbe3e9b 100644
@@ -59,9 +59,9 @@
 #define CONFIG_SYS_I2C_NOPROBES		{{0x0, 0x0}}
 
 /* USB */
-#define CONFIG_MUSB_GADGET
+#define CONFIG_USB_MUSB_GADGET
 #define CONFIG_USB_MUSB_OMAP2PLUS
-#define CONFIG_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_PIO_ONLY
 #define CONFIG_USB_GADGET_DUALSPEED
 #define CONFIG_TWL4030_USB		1
 #define CONFIG_USB_ETHER
include/configs/omap3_evm.h +4 -4
index 70fab4b..1dd71a8 100644
@@ -77,12 +77,12 @@
 
 /* USB
  *
- * Enable CONFIG_MUSB_HCD for Host functionalities MSC, keyboard
- * Enable CONFIG_MUSB_UDD for Device functionalities.
+ * Enable CONFIG_USB_MUSB_HCD for Host functionalities MSC, keyboard
+ * Enable CONFIG_USB_MUSB_UDD for Device functionalities.
  */
 #define CONFIG_USB_OMAP3
-#define CONFIG_MUSB_HCD
-/* #define CONFIG_MUSB_UDC */
+#define CONFIG_USB_MUSB_HCD
+/* #define CONFIG_USB_MUSB_UDC */
 
 /* NAND SPL */
 #define CONFIG_SPL_NAND_SIMPLE
include/configs/omap3_evm_common.h +4 -4
index 370f21e..66c314f 100644
@@ -146,7 +146,7 @@
  */
 #ifdef CONFIG_USB_OMAP3
 
-#ifdef CONFIG_MUSB_HCD
+#ifdef CONFIG_USB_MUSB_HCD
 #define CONFIG_CMD_USB
 
 #define CONFIG_USB_STORAGE
@@ -158,9 +158,9 @@
 #define CONFIG_PREBOOT			"usb start"
 #endif /* CONFIG_USB_KEYBOARD */
 
-#endif /* CONFIG_MUSB_HCD */
+#endif /* CONFIG_USB_MUSB_HCD */
 
-#ifdef CONFIG_MUSB_UDC
+#ifdef CONFIG_USB_MUSB_UDC
 /* USB device configuration */
 #define CONFIG_USB_DEVICE
 #define CONFIG_USB_TTY
@@ -171,7 +171,7 @@
 #define CONFIG_USBD_PRODUCTID		0x5678
 #define CONFIG_USBD_MANUFACTURER	"Texas Instruments"
 #define CONFIG_USBD_PRODUCT_NAME	"EVM"
-#endif /* CONFIG_MUSB_UDC */
+#endif /* CONFIG_USB_MUSB_UDC */
 
 #endif /* CONFIG_USB_OMAP3 */
 
include/configs/omap3_igep00x0.h +1 -1
index 89ec73c..8785d8f 100644
@@ -54,7 +54,7 @@
 #define CONFIG_OMAP3_GPIO_6		/* GPIO160..191 is in GPIO bank 6 */
 
 /* USB */
-#define CONFIG_MUSB_UDC			1
+#define CONFIG_USB_MUSB_UDC			1
 #define CONFIG_USB_OMAP3		1
 #define CONFIG_TWL4030_USB		1
 
include/configs/omap3_mvblx.h +1 -1
index 4339b05..19543a1 100644
@@ -94,7 +94,7 @@
 #define CONFIG_SILENT_CONSOLE		1
 
 /* USB */
-#define CONFIG_MUSB_UDC			1
+#define CONFIG_USB_MUSB_UDC			1
 #define CONFIG_USB_OMAP3		1
 #define CONFIG_TWL4030_USB		1
 
include/configs/omap3_zoom1.h +1 -1
index d90cc42..2d1d53d 100644
@@ -49,7 +49,7 @@
  */
 
 /* USB */
-#define CONFIG_MUSB_UDC			1
+#define CONFIG_USB_MUSB_UDC			1
 #define CONFIG_USB_OMAP3		1
 #define CONFIG_TWL4030_USB		1
 
include/configs/pcm051.h +6 -6
index d80cf32..275e952 100644
@@ -143,24 +143,24 @@
  */
 #define CONFIG_USB_MUSB_DSPS
 #define CONFIG_ARCH_MISC_INIT
-#define CONFIG_MUSB_GADGET
-#define CONFIG_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_GADGET
+#define CONFIG_USB_MUSB_PIO_ONLY
 #define CONFIG_USB_GADGET_DUALSPEED
-#define CONFIG_MUSB_HOST
+#define CONFIG_USB_MUSB_HOST
 #define CONFIG_AM335X_USB0
 #define CONFIG_AM335X_USB0_MODE	MUSB_PERIPHERAL
 #define CONFIG_AM335X_USB1
 #define CONFIG_AM335X_USB1_MODE MUSB_HOST
 
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 #define CONFIG_CMD_USB
 #define CONFIG_USB_STORAGE
 #endif
 
-#ifdef CONFIG_MUSB_GADGET
+#ifdef CONFIG_USB_MUSB_GADGET
 #define CONFIG_USB_ETHER
 #define CONFIG_USB_ETH_RNDIS
-#endif /* CONFIG_MUSB_GADGET */
+#endif /* CONFIG_USB_MUSB_GADGET */
 
 #define CONFIG_PHY_GIGE
 #define CONFIG_PHYLIB
include/configs/pengwyn.h +6 -6
index 4684ad6..ccb5dd3 100644
@@ -174,26 +174,26 @@
  */
 #define CONFIG_USB_MUSB_DSPS
 #define CONFIG_ARCH_MISC_INIT
-#define CONFIG_MUSB_GADGET
-#define CONFIG_MUSB_PIO_ONLY
-#define CONFIG_MUSB_DISABLE_BULK_COMBINE_SPLIT
+#define CONFIG_USB_MUSB_GADGET
+#define CONFIG_USB_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
 #define CONFIG_USB_GADGET
 #define CONFIG_USB_GADGET_DUALSPEED
 #define CONFIG_USB_GADGET_VBUS_DRAW	2
-#define CONFIG_MUSB_HOST
+#define CONFIG_USB_MUSB_HOST
 #define CONFIG_AM335X_USB0
 #define CONFIG_AM335X_USB0_MODE	MUSB_PERIPHERAL
 #define CONFIG_AM335X_USB1
 #define CONFIG_AM335X_USB1_MODE MUSB_HOST
 
-#if defined(CONFIG_MUSB_HOST)
+#if defined(CONFIG_USB_MUSB_HOST)
 #define CONFIG_CMD_USB
 #define CONFIG_USB_STORAGE
 #endif
 
 #if defined(CONFIG_SPL_BUILD)
 /* disable host part of MUSB in SPL */
-#undef CONFIG_MUSB_HOST
+#undef CONFIG_USB_MUSB_HOST
 /* Disable CPSW SPL support so we fit within the 101KiB limit. */
 #undef CONFIG_SPL_ETH_SUPPORT
 #endif
include/configs/siemens-am33x-common.h +7 -7
index f7bef70..08235c7 100644
@@ -226,27 +226,27 @@
  */
 #define CONFIG_USB_MUSB_DSPS
 #define CONFIG_ARCH_MISC_INIT
-#define CONFIG_MUSB_GADGET
-#define CONFIG_MUSB_PIO_ONLY
-#define CONFIG_MUSB_DISABLE_BULK_COMBINE_SPLIT
+#define CONFIG_USB_MUSB_GADGET
+#define CONFIG_USB_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
 #undef CONFIG_USB_GADGET_DUALSPEED
 #define CONFIG_USB_GADGET_VBUS_DRAW	2
-#define CONFIG_MUSB_HOST
+#define CONFIG_USB_MUSB_HOST
 
 #define CONFIG_AM335X_USB0
 #define CONFIG_AM335X_USB0_MODE	MUSB_PERIPHERAL
 #define CONFIG_AM335X_USB1
 #define CONFIG_AM335X_USB1_MODE MUSB_HOST
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 #define CONFIG_CMD_USB
 #define CONFIG_USB_STORAGE
 #endif
 
-#ifdef CONFIG_MUSB_GADGET
+#ifdef CONFIG_USB_MUSB_GADGET
 #define CONFIG_USB_ETHER
 #define CONFIG_USB_ETH_RNDIS
 #define CONFIG_USBNET_HOST_ADDR	"de:ad:be:af:00:00"
-#endif /* CONFIG_MUSB_GADGET */
+#endif /* CONFIG_USB_MUSB_GADGET */
 
 #define CONFIG_USB_GADGET
 #define CONFIG_USB_GADGET_DOWNLOAD
include/configs/sunxi-common.h +2 -2
index 5adcc39..c002342 100644
@@ -326,8 +326,8 @@ extern int soft_i2c_gpio_scl;
 #endif
 
 #ifdef CONFIG_USB_MUSB_SUNXI
-#define CONFIG_MUSB_HOST
-#define CONFIG_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_HOST
+#define CONFIG_USB_MUSB_PIO_ONLY
 #endif
 
 #ifdef CONFIG_USB_KEYBOARD
include/configs/ti_omap4_common.h +1 -1
index b299aed..2eaa3b6 100644
@@ -70,7 +70,7 @@
 #endif
 
 /* USB */
-#define CONFIG_MUSB_UDC			1
+#define CONFIG_USB_MUSB_UDC			1
 #define CONFIG_USB_OMAP3		1
 
 /* USB device configuration */
include/configs/tseries.h +5 -5
index 6a1835e..4265b8a 100644
@@ -245,20 +245,20 @@ MMCARGS
 /* USB configuration */
 #define CONFIG_USB_MUSB_DSPS
 #define CONFIG_ARCH_MISC_INIT
-#define CONFIG_MUSB_PIO_ONLY
-#define CONFIG_MUSB_DISABLE_BULK_COMBINE_SPLIT
+#define CONFIG_USB_MUSB_PIO_ONLY
+#define CONFIG_USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
 /* attention! not only for gadget, enables also highspeed in hostmode */
 #define CONFIG_USB_GADGET_DUALSPEED
-#define CONFIG_MUSB_HOST
+#define CONFIG_USB_MUSB_HOST
 #define CONFIG_AM335X_USB0
 #define CONFIG_AM335X_USB0_MODE	MUSB_HOST
 #define CONFIG_AM335X_USB1
 #define CONFIG_AM335X_USB1_MODE MUSB_HOST
 
-#ifdef CONFIG_MUSB_HOST
+#ifdef CONFIG_USB_MUSB_HOST
 #define CONFIG_CMD_USB
 #define CONFIG_USB_STORAGE
-#endif /* CONFIG_MUSB_HOST */
+#endif /* CONFIG_USB_MUSB_HOST */
 
 #if defined(CONFIG_SPI_BOOT)
 /* McSPI IP block */
include/usb.h +2 -2
index cf00ffd..88ebbe6 100644
@@ -174,7 +174,7 @@ enum usb_init_type {
 int usb_lowlevel_init(int index, enum usb_init_type init, void **controller);
 int usb_lowlevel_stop(int index);
 
-#if defined(CONFIG_MUSB_HOST) || defined(CONFIG_DM_USB)
+#if defined(CONFIG_USB_MUSB_HOST) || defined(CONFIG_DM_USB)
 int usb_reset_root_port(struct usb_device *dev);
 #else
 #define usb_reset_root_port(dev)
@@ -187,7 +187,7 @@ int submit_control_msg(struct usb_device *dev, unsigned long pipe, void *buffer,
 int submit_int_msg(struct usb_device *dev, unsigned long pipe, void *buffer,
 			int transfer_len, int interval);
 
-#if defined CONFIG_USB_EHCI || defined CONFIG_MUSB_HOST || defined(CONFIG_DM_USB)
+#if defined CONFIG_USB_EHCI || defined CONFIG_USB_MUSB_HOST || defined(CONFIG_DM_USB)
 struct int_queue *create_int_queue(struct usb_device *dev, unsigned long pipe,
 	int queuesize, int elementsize, void *buffer, int interval);
 int destroy_int_queue(struct usb_device *dev, struct int_queue *queue);
Signature · 1 line
2.4.3
#4 lore raw

PATCH v2 4/10 usb: musb-new: Kconfig support for USB_MUSB_HOST and USB_MUSB_GADGET

In reply to Hans de Goede

From: Paul Kocialkowski <[email protected]>

Having MUSB_HOST and MUSB_GADGET in Kconfig allows more flexibility with regard to what Kconfig options to enable, such as USB_STORAGE or USB_KEYBOARD.

---
 drivers/usb/Kconfig          |  2 ++
 drivers/usb/musb-new/Kconfig | 14 ++++++++++++++
 2 files changed, 16 insertions(+)
 create mode 100644 drivers/usb/musb-new/Kconfig
drivers/usb/Kconfig +2 -0
index adce3f6..abb06fc 100644
@@ -49,6 +49,8 @@ config DM_USB
 
 source "drivers/usb/host/Kconfig"
 
+source "drivers/usb/musb-new/Kconfig"
+
 source "drivers/usb/emul/Kconfig"
 
 comment "USB peripherals"
drivers/usb/musb-new/Kconfig new file +14 -0
new file mode 100644
index 0000000..34a8474
@@ -0,0 +1,14 @@
+#
+# MUSB Controller Driver
+#
+comment "MUSB Controller Driver"
+
+config USB_MUSB_HOST
+	bool "MUSB host mode support"
+	help
+	  Enables the MUSB USB dual-role controller in host mode.
+
+config USB_MUSB_GADGET
+	bool "MUSB gadget mode support"
+	help
+	  Enables the MUSB USB dual-role controller in gadget mode.
Signature · 1 line
2.4.3
#5 lore raw

PATCH v2 5/10 sunxi: usb: USB_MUSB_SUNXI move to musb-new Kconfig

In reply to Hans de Goede

From: Paul Kocialkowski <[email protected]>

Now that the musb-new driver has a Kconfig, we can move Kconfig options to enable controllers to it, so that it's easier in e.g. menuconfig.

In addition, this allows declaring support for USB_MUSB_HOST/GADGET in defconfigs instead of the USB_MUSB_SUNXI controller, that will get selected automatically when needed.

---
 board/sunxi/Kconfig                          |  9 ---------
 configs/Ainol_AW1_defconfig                  |  2 +-
 configs/Ampe_A76_defconfig                   |  2 +-
 configs/CSQ_CS908_defconfig                  |  2 +-
 configs/Chuwi_V7_CW0825_defconfig            |  2 +-
 configs/Et_q8_v1_6_defconfig                 |  2 +-
 configs/Hyundai_A7HD_defconfig               |  2 +-
 configs/Ippo_q8h_v1_2_a33_1024x600_defconfig |  2 +-
 configs/Ippo_q8h_v1_2_defconfig              |  2 +-
 configs/Ippo_q8h_v5_defconfig                |  2 +-
 configs/MSI_Primo81_defconfig                |  2 +-
 configs/Mele_A1000G_quad_defconfig           |  2 +-
 configs/Mini-X_defconfig                     |  2 +-
 configs/TZX-Q8-713B7_defconfig               |  2 +-
 configs/UTOO_P66_defconfig                   |  2 +-
 configs/Yones_Toptech_BD1078_defconfig       |  2 +-
 configs/ba10_tv_box_defconfig                |  2 +-
 configs/forfun_q88db_defconfig               |  2 +-
 configs/ga10h_v1_1_defconfig                 |  2 +-
 configs/iNet_3F_defconfig                    |  2 +-
 configs/iNet_3W_defconfig                    |  2 +-
 configs/iNet_86VS_defconfig                  |  2 +-
 drivers/usb/musb-new/Kconfig                 | 14 ++++++++++++++
 23 files changed, 35 insertions(+), 30 deletions(-)
board/sunxi/Kconfig +0 -9
index 441c880..e1c5e1d 100644
@@ -539,15 +539,6 @@ config VIDEO_LCD_TL059WV5C0
 endchoice
 
 
-config USB_MUSB_SUNXI
-	bool "Enable sunxi OTG / DRC USB controller in host mode"
-	default n
-	---help---
-	Say y here to enable support for the sunxi OTG / DRC USB controller
-	used on almost all sunxi boards. Note currently u-boot can only have
-	one usb host controller enabled at a time, so enabling this on boards
-	which also use the ehci host controller will result in build errors.
-
 config USB_KEYBOARD
 	boolean "Enable USB keyboard support"
 	default y
configs/Ainol_AW1_defconfig +1 -1
index e1262e6..ff7abfa 100644
@@ -11,7 +11,7 @@ CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:40000,le:87,ri:112,up:38,lo
 CONFIG_VIDEO_LCD_POWER="PH8"
 CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-ainol-aw1"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/Ampe_A76_defconfig +1 -1
index 2ee0307..1d36919 100644
@@ -10,7 +10,7 @@ CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:45,ri:82,up:22,lo:
 CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-ampe-a76"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/CSQ_CS908_defconfig +1 -1
index fe88a7b..7c8eca8 100644
@@ -15,4 +15,4 @@ CONFIG_ETH_DESIGNWARE=y
 CONFIG_AXP221_DLDO1_VOLT=3300
 CONFIG_AXP221_ALDO1_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
configs/Chuwi_V7_CW0825_defconfig +1 -1
index cb659c9..4011351 100644
@@ -10,7 +10,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
 CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_PANEL_HITACHI_TX18D42VM=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-chuwi-v7-cw0825"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/Et_q8_v1_6_defconfig +1 -1
index 2783347..ca8db19 100644
@@ -11,7 +11,7 @@ CONFIG_VIDEO_LCD_DCLK_PHASE=0
 CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-et-q8-v1.6"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/Hyundai_A7HD_defconfig +1 -1
index 06fdd2a..065a3f9 100644
@@ -12,7 +12,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH9"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_VIDEO_LCD_BL_PWM_ACTIVE_LOW is not set
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-hyundai-a7hd"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/Ippo_q8h_v1_2_a33_1024x600_defconfig +1 -1
index fda7683..213de5a 100644
@@ -12,7 +12,7 @@ CONFIG_VIDEO_LCD_DCLK_PHASE=0
 CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-ippo-q8h-v1.2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/Ippo_q8h_v1_2_defconfig +1 -1
index 490cbe2..ff5ec30 100644
@@ -12,7 +12,7 @@ CONFIG_VIDEO_LCD_DCLK_PHASE=0
 CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-a23-ippo-q8h-v1.2"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/Ippo_q8h_v5_defconfig +1 -1
index aa1eb69..b67206c 100644
@@ -12,7 +12,7 @@ CONFIG_VIDEO_LCD_DCLK_PHASE=0
 CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-a23-ippo-q8h-v5"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/MSI_Primo81_defconfig +1 -1
index b3b21cb..b089e97 100644
@@ -10,7 +10,7 @@ CONFIG_VIDEO_LCD_MODE="x:768,y:1024,depth:18,pclk_khz:66000,le:56,ri:60,up:30,lo
 CONFIG_VIDEO_LCD_BL_EN="PA25"
 CONFIG_VIDEO_LCD_BL_PWM="PH13"
 CONFIG_VIDEO_LCD_PANEL_MIPI_4_LANE_513_MBPS_VIA_SSD2828=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 # CONFIG_USB_KEYBOARD is not set
 CONFIG_DEFAULT_DEVICE_TREE="sun6i-a31s-primo81"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
configs/Mele_A1000G_quad_defconfig +1 -1
index ffc8d9b..5e31ef6 100644
@@ -17,4 +17,4 @@ CONFIG_AXP221_DLDO1_VOLT=3300
 CONFIG_AXP221_DLDO4_VOLT=3300
 CONFIG_AXP221_ALDO1_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
configs/Mini-X_defconfig +1 -1
index c721c87..00b6c63 100644
@@ -9,5 +9,5 @@ CONFIG_SYS_EXTRA_OPTIONS="AXP209_POWER"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
 CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_USB0_VBUS_PIN="PB9"
configs/TZX-Q8-713B7_defconfig +1 -1
index 6a716bd..3508834 100644
@@ -10,7 +10,7 @@ CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:87,ri:40,up:31,lo:
 CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-tzx-q8-713b7"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/UTOO_P66_defconfig +1 -1
index d59a044..0266299 100644
@@ -15,7 +15,7 @@ CONFIG_VIDEO_LCD_RESET="PG11"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_TL059WV5C0=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-utoo-p66"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/Yones_Toptech_BD1078_defconfig +1 -1
index 22b51a2..27f2e2b 100644
@@ -16,7 +16,7 @@ CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 # CONFIG_VIDEO_LCD_BL_PWM_ACTIVE_LOW is not set
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-yones-toptech-bd1078"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/ba10_tv_box_defconfig +1 -1
index ae302c5..5b5fc12 100644
@@ -12,5 +12,5 @@ CONFIG_SYS_EXTRA_OPTIONS="AXP209_POWER,SUNXI_EMAC"
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_FPGA is not set
 CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_USB0_VBUS_PIN="PB9"
configs/forfun_q88db_defconfig +1 -1
index 8f10c25..6fff725 100644
@@ -9,7 +9,7 @@ CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:87,ri:40,up:31,lo:
 CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-forfun-q88db"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/ga10h_v1_1_defconfig +1 -1
index e766db4..098284d 100644
@@ -14,7 +14,7 @@ CONFIG_VIDEO_LCD_POWER="PH7"
 CONFIG_VIDEO_LCD_BL_EN="PH6"
 CONFIG_VIDEO_LCD_BL_PWM="PH0"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun8i-a33-ga10h-v1.1"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/iNet_3F_defconfig +1 -1
index c4611cf..22d0caf 100644
@@ -11,7 +11,7 @@ CONFIG_VIDEO_LCD_POWER="PH8"
 CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
 CONFIG_VIDEO_LCD_PANEL_LVDS=y
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-inet-3f"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/iNet_3W_defconfig +1 -1
index d75eb21..c296c0c 100644
@@ -11,7 +11,7 @@ CONFIG_VIDEO_LCD_MODE="x:1024,y:768,depth:24,pclk_khz:65000,le:159,ri:160,up:22,
 CONFIG_VIDEO_LCD_POWER="PH8"
 CONFIG_VIDEO_LCD_BL_EN="PH7"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun4i-a10-inet-3w"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
configs/iNet_86VS_defconfig +1 -1
index b9f2066..33162d1 100644
@@ -9,7 +9,7 @@ CONFIG_VIDEO_LCD_MODE="x:800,y:480,depth:18,pclk_khz:33000,le:45,ri:209,up:22,lo
 CONFIG_VIDEO_LCD_POWER="AXP0-0"
 CONFIG_VIDEO_LCD_BL_EN="AXP0-1"
 CONFIG_VIDEO_LCD_BL_PWM="PB2"
-CONFIG_USB_MUSB_SUNXI=y
+CONFIG_USB_MUSB_HOST=y
 CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-inet-86vs"
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL=y
drivers/usb/musb-new/Kconfig +14 -0
index 34a8474..0082ff8 100644
@@ -12,3 +12,17 @@ config USB_MUSB_GADGET
 	bool "MUSB gadget mode support"
 	help
 	  Enables the MUSB USB dual-role controller in gadget mode.
+
+if USB_MUSB_HOST || USB_MUSB_GADGET
+
+config USB_MUSB_SUNXI
+	bool "Enable sunxi OTG / DRC USB controller"
+	depends on ARCH_SUNXI
+	default y
+	---help---
+	Say y here to enable support for the sunxi OTG / DRC USB controller
+	used on almost all sunxi boards. Note currently u-boot can only have
+	one usb host controller enabled at a time, so enabling this on boards
+	which also use the ehci host controller will result in build errors.
+
+endif
Signature · 1 line
2.4.3
#6 lore raw

PATCH v2 6/10 sunxi: config update to stick with Kconfig changes

In reply to Hans de Goede

From: Paul Kocialkowski <[email protected]>

Now that some things were updated in Kconfig, they should be reflected on the sunxi-common config too.

---
 include/configs/sunxi-common.h | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
include/configs/sunxi-common.h +2 -3
index c002342..7ed208c 100644
@@ -318,7 +318,7 @@ extern int soft_i2c_gpio_scl;
 #define CONFIG_PHYLIB
 #endif
 
-#ifdef CONFIG_USB_EHCI
+#ifdef CONFIG_USB_EHCI_HCD
 #define CONFIG_USB_OHCI_NEW
 #define CONFIG_USB_OHCI_SUNXI
 #define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS 1
@@ -326,7 +326,6 @@ extern int soft_i2c_gpio_scl;
 #endif
 
 #ifdef CONFIG_USB_MUSB_SUNXI
-#define CONFIG_USB_MUSB_HOST
 #define CONFIG_USB_MUSB_PIO_ONLY
 #endif
 
@@ -379,7 +378,7 @@ extern int soft_i2c_gpio_scl;
 #define BOOT_TARGET_DEVICES_SCSI(func)
 #endif
 
-#ifdef CONFIG_USB_EHCI
+#ifdef CONFIG_USB_STORAGE
 #define BOOT_TARGET_DEVICES_USB(func) func(USB, usb, 0)
 #else
 #define BOOT_TARGET_DEVICES_USB(func)
Signature · 1 line
2.4.3
#7 lore raw

PATCH v2 7/10 musb: sunxi: Force EP0 on re-enable

In reply to Hans de Goede

From: Maxime Ripard <[email protected]>

Currently, the second use of a gadget will fail, while the first one works.

Forcing the EP0 at every enable fix this issue.

---
 drivers/usb/musb-new/sunxi.c | 3 +++
 1 file changed, 3 insertions(+)
drivers/usb/musb-new/sunxi.c +3 -0
index 85ac28d..16a264a 100644
@@ -200,6 +200,9 @@ static int sunxi_musb_enable(struct musb *musb)
 
 	pr_debug("%s():\n", __func__);
 
+	musb_ep_select(musb->mregs, 0);
+	musb_writeb(musb->mregs, MUSB_FADDR, 0);
+
 	if (enabled)
 		return 0;
 
Signature · 1 line
2.4.3
#8 lore raw

PATCH v2 8/10 sunxi: MUSB gadget config provisions, with fastboot and USB mass storage support

In reply to Hans de Goede

From: Paul Kocialkowski <[email protected]>

This adds some config options to the sunxi-common config to enable the USB download gadget and the fastboot and USB mass storage functions.

---
 include/configs/sunxi-common.h | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)
include/configs/sunxi-common.h +30 -0
index 7ed208c..edcacd5 100644
@@ -329,6 +329,36 @@ extern int soft_i2c_gpio_scl;
 #define CONFIG_USB_MUSB_PIO_ONLY
 #endif
 
+#ifdef CONFIG_USB_MUSB_GADGET
+#define CONFIG_USB_GADGET
+#define CONFIG_USB_GADGET_DUALSPEED
+#define CONFIG_USB_GADGET_VBUS_DRAW	0
+
+#define CONFIG_USB_GADGET_DOWNLOAD
+#define CONFIG_USB_FUNCTION_FASTBOOT
+#define CONFIG_USB_FUNCTION_MASS_STORAGE
+#endif
+
+#ifdef CONFIG_USB_GADGET_DOWNLOAD
+#define CONFIG_G_DNL_VENDOR_NUM		0x1f3a
+#define CONFIG_G_DNL_PRODUCT_NUM	0x1010
+#define CONFIG_G_DNL_MANUFACTURER	"Allwinner Technology"
+#endif
+
+#ifdef CONFIG_USB_FUNCTION_FASTBOOT
+#define CONFIG_CMD_FASTBOOT
+#define CONFIG_FASTBOOT_BUF_ADDR	CONFIG_SYS_LOAD_ADDR
+#define CONFIG_FASTBOOT_BUF_SIZE	0x2000000
+
+#define CONFIG_FASTBOOT_FLASH
+#define CONFIG_FASTBOOT_FLASH_MMC_DEV	0
+#define CONFIG_EFI_PARTITION
+#endif
+
+#ifdef CONFIG_USB_FUNCTION_MASS_STORAGE
+#define CONFIG_CMD_USB_MASS_STORAGE
+#endif
+
 #ifdef CONFIG_USB_KEYBOARD
 #define CONFIG_CONSOLE_MUX
 #define CONFIG_PREBOOT
Signature · 1 line
2.4.3
#9 lore raw

PATCH v2 9/10 usb: USB storage-specific part ifdef in uclass

In reply to Hans de Goede

From: Paul Kocialkowski <[email protected]>

usb_stor_reset is only defined when USB storage support is enabled, thus the function is not declared when such support is missing.

---
 drivers/usb/host/usb-uclass.c | 2 ++
 1 file changed, 2 insertions(+)
drivers/usb/host/usb-uclass.c +2 -0
index c5d1e7f..b17a7d7 100644
@@ -173,7 +173,9 @@ int usb_stop(void)
 	uclass_foreach_dev(dev, uc)
 		usb_emul_reset(dev);
 #endif
+#ifdef CONFIG_USB_STORAGE
 	usb_stor_reset();
+#endif
 	usb_hub_reset();
 	uc_priv->companion_device_count = 0;
 	usb_started = 0;
Signature · 1 line
2.4.3
#10 lore raw

PATCH v2 10/10 sunxi: Drop our own copy of the USB_KEYBOARD options

In reply to Hans de Goede

USB_KEYBOARD is now defined in drivers/usb/Kconfig, drop our own duplicate definition.

---
 arch/arm/Kconfig    | 1 +
 board/sunxi/Kconfig | 7 -------
 2 files changed, 1 insertion(+), 7 deletions(-)
arch/arm/Kconfig +1 -0
index 32fa2dd..8b8269f 100644
@@ -653,6 +653,7 @@ config ARCH_SUNXI
 	select SPL_DISABLE_OF_CONTROL
 	select USB
 	select USB_STORAGE
+	select USB_KEYBOARD
 
 config TARGET_SNOWBALL
 	bool "Support snowball"
board/sunxi/Kconfig +0 -7
index e1c5e1d..c4b5a85 100644
@@ -539,13 +539,6 @@ config VIDEO_LCD_TL059WV5C0
 endchoice
 
 
-config USB_KEYBOARD
-	boolean "Enable USB keyboard support"
-	default y
-	---help---
-	Say Y here to add support for using a USB keyboard (typically used
-	in combination with a graphical console).
-
 config GMAC_TX_DELAY
 	int "GMAC Transmit Clock Delay Chain"
 	default 0
Signature · 1 line
2.4.3
Applied
#11 lore raw

v2 cover usb: MUSB gadget config provisions

In reply to Hans de Goede
Quoted 12 lines · Hans de Goede

Hi Marek and Paul,

Here is a new version of Paul's MUSB gadget Kconfig changes based on the latest master. I've dropped the dependency on the Kconfig-menu changes since similar changes for drivers/usb/Kconfig have already landed in master via the "arm: mx6: cm-fx6" changes. Likewise I've dropped the 2 patches related to moving the USB_KEYBOARD Kconfig from board/sunxi/Kconfig to drivers/usb/Kconfig, as the "arm: mx6: cm-fx6" changes already add a USB_KEYBOARD Kconfig option to drivers/usb/Kconfig. I've replaced this 2 with a patch of my own simply dropping the duplicate USB_KEYBOARD option from board/sunxi/Kconfig.

Quoted 4 lines

Marek, this version sits direct on top of current master, so you should be able to take it right away, then maybe we can get these changes in before things change underneath us again (lots of Kconfig churn lately).

Applied all, thanks :)

Best regards,
Marek Vasut

#12 lore raw

v2 cover usb: MUSB gadget config provisions

Le mardi 04 ao?t 2015 ? 18:23 +0200, Marek Vasut a ?crit :

Quoted 13 lines · Hans de Goede
Quoted 12 lines

Hi Marek and Paul,

Here is a new version of Paul's MUSB gadget Kconfig changes based on the latest master. I've dropped the dependency on the Kconfig-menu changes since similar changes for drivers/usb/Kconfig have already landed in master via the "arm: mx6: cm-fx6" changes. Likewise I've dropped the 2 patches related to moving the USB_KEYBOARD Kconfig from board/sunxi/Kconfig to drivers/usb/Kconfig, as the "arm: mx6: cm-fx6" changes already add a USB_KEYBOARD Kconfig option to drivers/usb/Kconfig. I've replaced this 2 with a patch of my own simply dropping the duplicate USB_KEYBOARD option from board/sunxi/Kconfig.

Quoted 6 lines
Quoted 4 lines

Marek, this version sits direct on top of current master, so you should be able to take it right away, then maybe we can get these changes in before things change underneath us again (lots of Kconfig churn lately).

Applied all, thanks :)

Thanks a lot for the rebase Hans and thanks Marek for merging this fast!

Signature · 16 lines
Paul Kocialkowski, Replicant developer

Replicant is a fully free Android distribution running on several
devices, a free software mobile operating system putting the emphasis on
freedom and privacy/security.

Website: http://www.replicant.us/
Blog: http://blog.replicant.us/
Wiki/tracker/forums: http://redmine.replicant.us/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150804/e7428ad0/attachment.sig>