[PATCH] usb: select NOP_USB_XCEIV by drivers that require it

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[PATCH] usb: select NOP_USB_XCEIV by drivers that require it

Michal Suchanek
Hello,

I was updating my config by make oldconfig for a while and noticed that my USB
OTG controller is not working. Apparently it grew dependency on NOP_USB_XCEIV
over time.

Looking through defconfigs some have it included and some which seem in need of
it don't.

Since the dependency is not obvious I think it would be better to select it
where possible.

Attaching a patch.

Thanks

Michal

8<--------------------------------------------------------------------------
NOP_USB_XCEIV is non-obvious dependency for MUSB and other drivers.

This is a virtual driver in the sense that there is no actual piece of
hardware you can point at and say you did not include driver for this so
it won't work.

So just change all depends on it to select.

Signed-off-by: Michal Suchanek <[hidden email]>
---
 drivers/usb/chipidea/Kconfig |  3 ++-
 drivers/usb/musb/Kconfig     | 19 +++++++++++++------
 drivers/usb/phy/Kconfig      |  2 ++
 3 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/drivers/usb/chipidea/Kconfig b/drivers/usb/chipidea/Kconfig
index 3644a35..8d08ebd 100644
--- a/drivers/usb/chipidea/Kconfig
+++ b/drivers/usb/chipidea/Kconfig
@@ -19,7 +19,8 @@ config USB_CHIPIDEA_OF
 config USB_CHIPIDEA_PCI
  tristate
  depends on PCI
- depends on NOP_USB_XCEIV
+ select NOP_USB_XCEIV
+ select USB_PHY
  default USB_CHIPIDEA
 
 config USB_CHIPIDEA_UDC
diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig
index 886526b..91717b9 100644
--- a/drivers/usb/musb/Kconfig
+++ b/drivers/usb/musb/Kconfig
@@ -66,7 +66,8 @@ comment "Platform Glue Layer"
 config USB_MUSB_SUNXI
  tristate "Allwinner (sunxi)"
  depends on ARCH_SUNXI
- depends on NOP_USB_XCEIV
+ select NOP_USB_XCEIV
+ select USB_PHY
  depends on PHY_SUN4I_USB
  depends on EXTCON
  depends on GENERIC_PHY
@@ -75,13 +76,15 @@ config USB_MUSB_SUNXI
 config USB_MUSB_DAVINCI
  tristate "DaVinci"
  depends on ARCH_DAVINCI_DMx
- depends on NOP_USB_XCEIV
+ select NOP_USB_XCEIV
+ select USB_PHY
  depends on BROKEN
 
 config USB_MUSB_DA8XX
  tristate "DA8xx/OMAP-L1x"
  depends on ARCH_DAVINCI_DA8XX
- depends on NOP_USB_XCEIV
+ select NOP_USB_XCEIV
+ select USB_PHY
  depends on BROKEN
 
 config USB_MUSB_TUSB6010
@@ -89,6 +92,7 @@ config USB_MUSB_TUSB6010
  depends on HAS_IOMEM
  depends on ARCH_OMAP2PLUS || COMPILE_TEST
  depends on NOP_USB_XCEIV = USB_MUSB_HDRC # both built-in or both modules
+ # cannot select NOP_USB_XCEIV because of the dependency above
 
 config USB_MUSB_OMAP2PLUS
  tristate "OMAP2430 and onwards"
@@ -99,7 +103,8 @@ config USB_MUSB_OMAP2PLUS
 config USB_MUSB_AM35X
  tristate "AM35x"
  depends on ARCH_OMAP
- depends on NOP_USB_XCEIV
+ select NOP_USB_XCEIV
+ select USB_PHY
 
 config USB_MUSB_DSPS
  tristate "TI DSPS platforms"
@@ -110,7 +115,8 @@ config USB_MUSB_DSPS
 config USB_MUSB_BLACKFIN
  tristate "Blackfin"
  depends on (BF54x && !BF544) || (BF52x && ! BF522 && !BF523)
- depends on NOP_USB_XCEIV
+ select NOP_USB_XCEIV
+ select USB_PHY
 
 config USB_MUSB_UX500
  tristate "Ux500 platforms"
@@ -118,7 +124,8 @@ config USB_MUSB_UX500
 
 config USB_MUSB_JZ4740
  tristate "JZ4740"
- depends on NOP_USB_XCEIV
+ select NOP_USB_XCEIV
+ select USB_PHY
  depends on MACH_JZ4740 || COMPILE_TEST
  depends on USB_MUSB_GADGET
  depends on USB_OTG_BLACKLIST_HUB
diff --git a/drivers/usb/phy/Kconfig b/drivers/usb/phy/Kconfig
index c690474..a0bdfd3 100644
--- a/drivers/usb/phy/Kconfig
+++ b/drivers/usb/phy/Kconfig
@@ -57,6 +57,8 @@ config NOP_USB_XCEIV
   built-in with usb ip or which are autonomous and doesn't require any
   phy programming such as ISP1x04 etc.
 
+  Should be automatically selected by the relevant driver.
+
 config AM335X_CONTROL_USB
  tristate
 
--
2.8.1