[PATCH 1/2] usb: change the dependency chain for LPC32XX and ISP1301

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The gadget case is, just depend on the ISP1301 instead of selecting it.
The OHCI case is little more difficult. It is not possible to say select
if and on top of it, the phy depends on USB which depends on OHCI. This
started as a fix for:

| drivers/usb/gadget/lpc32xx_udc.c: In function ‘isp1301_udc_configure’:
| drivers/usb/gadget/lpc32xx_udc.c:606: error: implicit declaration of function ‘i2c_smbus_write_byte_data’
| drivers/usb/gadget/lpc32xx_udc.c:665: error: implicit declaration of function ‘i2c_smbus_read_word_data’
| drivers/usb/gadget/lpc32xx_udc.c: In function ‘vbus_work’:
| drivers/usb/gadget/lpc32xx_udc.c:2959: error: implicit declaration of function ‘i2c_smbus_read_byte_data’

Cc: Alexandre Pereira da Silva <aletes.xgr@xxxxxxxxx>
Cc: Roland Stigge <stigge@xxxxxxxxx>
Cc: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
---
 drivers/usb/gadget/Kconfig  |    3 +--
 drivers/usb/host/Kconfig    |   10 +++++++++-
 drivers/usb/host/ohci-hcd.c |    2 +-
 3 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
index 51ab5fd..1494112 100644
--- a/drivers/usb/gadget/Kconfig
+++ b/drivers/usb/gadget/Kconfig
@@ -143,8 +143,7 @@ config USB_AT91
 
 config USB_LPC32XX
 	tristate "LPC32XX USB Peripheral Controller"
-	depends on ARCH_LPC32XX
-	select USB_ISP1301
+	depends on ARCH_LPC32XX && USB_ISP1301
 	help
 	   This option selects the USB device controller in the LPC32xx SoC.
 
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index c3f619b..cac3ee2 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -292,7 +292,6 @@ config USB_OHCI_HCD
 	depends on USB && USB_ARCH_HAS_OHCI
 	select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3
 	select USB_OTG_UTILS if ARCH_OMAP
-	select USB_ISP1301 if ARCH_LPC32XX || ARCH_PNX4008
 	---help---
 	  The Open Host Controller Interface (OHCI) is a standard for accessing
 	  USB 1.1 host controller hardware.  It does more in hardware than Intel's
@@ -412,6 +411,15 @@ config USB_CNS3XXX_OHCI
 	  Enable support for the CNS3XXX SOC's on-chip OHCI controller.
 	  It is needed for low-speed USB 1.0 device support.
 
+config USB_OHCI_LPC32XX_PNX4008
+	bool "LPC32XX or PNX4008 OHCI Module"
+	depends on USB_OHCI_HCD
+	depends on USB_ISP1301
+	---help---
+	  Enable support for the LPC32XX or PNX4008 SOC's on-chip
+	  OHCI controller.
+	  It is needed for low-speed USB 1.0 device support.
+
 config USB_OHCI_HCD_PLATFORM
 	bool "Generic OHCI driver for a platform device"
 	depends on USB_OHCI_HCD && EXPERIMENTAL
diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
index 2b1e8d8..95cb858 100644
--- a/drivers/usb/host/ohci-hcd.c
+++ b/drivers/usb/host/ohci-hcd.c
@@ -1049,7 +1049,7 @@ MODULE_LICENSE ("GPL");
 #define PLATFORM_DRIVER		ohci_hcd_at91_driver
 #endif
 
-#if defined(CONFIG_ARCH_PNX4008) || defined(CONFIG_ARCH_LPC32XX)
+#ifdef USB_OHCI_LPC32XX_PNX4008
 #include "ohci-nxp.c"
 #define PLATFORM_DRIVER		usb_hcd_nxp_driver
 #endif
-- 
1.7.10.4

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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux