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

From: Michal Suchanek
Date: Thu May 26 2016 - 15:32:13 EST


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 <hramrach@xxxxxxxxx>
---
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