public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] usb: rework CONFIG_USB_COMMON logic
@ 2016-03-23 16:45 Arnd Bergmann
  2016-03-30 10:31 ` Felipe Balbi
  0 siblings, 1 reply; 8+ messages in thread
From: Arnd Bergmann @ 2016-03-23 16:45 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Felipe Balbi
  Cc: Bin Liu, Peter Chen, Arnd Bergmann, Kishon Vijay Abraham I,
	Peter Chen, linux-kernel, linux-usb

The phy-am335x driver selects 'USB_COMMON', but all other drivers
use 'depends on' for that symbol, and it depends on USB || USB_GADGET
itself, which causes a Kconfig warning:

warning: (AM335X_PHY_USB) selects USB_COMMON which has unmet direct dependencies (USB_SUPPORT && (USB || USB_GADGET))

As suggested by Felipe Balbi, this turns the logic around, and makes
'USB_COMMON' selected by everything else that needs it, so we can
remove the dependencies.

Fixes: 59f042f644c5 ("usb: phy: phy-am335x: bypass first VBUS sensing for host-only mode")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Felipe Balbi <balbi@kernel.org>
Reviewed-by: Peter Chen <peter.chen@nxp.com>
---
I seem to have dropped the ball on this one after my initial submission
when it wasn't clear who should merge the patch.

Please apply to the USB or the USB gadget tree, whoever gets there
first.
---
 drivers/phy/Kconfig        | 3 ++-
 drivers/usb/Kconfig        | 3 +--
 drivers/usb/gadget/Kconfig | 1 +
 3 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/phy/Kconfig b/drivers/phy/Kconfig
index 26566db09de0..e92b97cd6056 100644
--- a/drivers/phy/Kconfig
+++ b/drivers/phy/Kconfig
@@ -250,7 +250,8 @@ config PHY_SUN9I_USB
 	tristate "Allwinner sun9i SoC USB PHY driver"
 	depends on ARCH_SUNXI && HAS_IOMEM && OF
 	depends on RESET_CONTROLLER
-	depends on USB_COMMON
+	depends on USB_SUPPORT
+	select USB_COMMON
 	select GENERIC_PHY
 	help
 	  Enable this to support the transceiver that is part of Allwinner
diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig
index 8ed451dd651e..8689dcba5201 100644
--- a/drivers/usb/Kconfig
+++ b/drivers/usb/Kconfig
@@ -31,8 +31,6 @@ if USB_SUPPORT
 
 config USB_COMMON
 	tristate
-	default y
-	depends on USB || USB_GADGET
 
 config USB_ARCH_HAS_HCD
 	def_bool y
@@ -41,6 +39,7 @@ config USB_ARCH_HAS_HCD
 config USB
 	tristate "Support for Host-side USB"
 	depends on USB_ARCH_HAS_HCD
+	select USB_COMMON
 	select NLS  # for UTF-8 strings
 	---help---
 	  Universal Serial Bus (USB) is a specification for a serial bus
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
index af5d922a8f5d..2057add439f0 100644
--- a/drivers/usb/gadget/Kconfig
+++ b/drivers/usb/gadget/Kconfig
@@ -15,6 +15,7 @@
 
 menuconfig USB_GADGET
 	tristate "USB Gadget Support"
+	select USB_COMMON
 	select NLS
 	help
 	   USB is a master/slave protocol, organized with one master
-- 
2.7.0

^ permalink raw reply related	[flat|nested] 8+ messages in thread
* [PATCH] usb: rework CONFIG_USB_COMMON logic
@ 2016-02-03 22:35 Arnd Bergmann
  2016-02-04  6:39 ` Peter Chen
  2016-02-04 11:49 ` Felipe Balbi
  0 siblings, 2 replies; 8+ messages in thread
From: Arnd Bergmann @ 2016-02-03 22:35 UTC (permalink / raw)
  To: Felipe Balbi
  Cc: Bin Liu, Felipe Balbi, balbif, Greg Kroah-Hartman, linux-usb,
	linux-kernel

The phy-am335x driver selects 'USB_COMMON', but all other drivers
use 'depends on' for that symbol, and it depends on USB || USB_GADGET
itself, which causes a Kconfig warning:

warning: (AM335X_PHY_USB) selects USB_COMMON which has unmet direct dependencies (USB_SUPPORT && (USB || USB_GADGET))

As suggested by Felipe Balbi, this turns the logic around, and makes
'USB_COMMON' selected by everything else that needs it, so we can
remove the dependencies.

Fixes: 59f042f644c5 ("usb: phy: phy-am335x: bypass first VBUS sensing for host-only mode")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
Preliminary for now, I've added it to my patch stack for randconfig tests
and will test it overnight to see if any build-time regressions come up.

diff --git a/drivers/phy/Kconfig b/drivers/phy/Kconfig
index e7e117d5dbbe..df005f5a0e0c 100644
--- a/drivers/phy/Kconfig
+++ b/drivers/phy/Kconfig
@@ -249,7 +249,8 @@ config PHY_SUN9I_USB
 	tristate "Allwinner sun9i SoC USB PHY driver"
 	depends on ARCH_SUNXI && HAS_IOMEM && OF
 	depends on RESET_CONTROLLER
-	depends on USB_COMMON
+	depends on USB_SUPPORT
+	select USB_COMMON
 	select GENERIC_PHY
 	help
 	  Enable this to support the transceiver that is part of Allwinner
diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig
index 8ed451dd651e..8689dcba5201 100644
--- a/drivers/usb/Kconfig
+++ b/drivers/usb/Kconfig
@@ -31,8 +31,6 @@ if USB_SUPPORT
 
 config USB_COMMON
 	tristate
-	default y
-	depends on USB || USB_GADGET
 
 config USB_ARCH_HAS_HCD
 	def_bool y
@@ -41,6 +39,7 @@ config USB_ARCH_HAS_HCD
 config USB
 	tristate "Support for Host-side USB"
 	depends on USB_ARCH_HAS_HCD
+	select USB_COMMON
 	select NLS  # for UTF-8 strings
 	---help---
 	  Universal Serial Bus (USB) is a specification for a serial bus
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
index af5d922a8f5d..2057add439f0 100644
--- a/drivers/usb/gadget/Kconfig
+++ b/drivers/usb/gadget/Kconfig
@@ -15,6 +15,7 @@
 
 menuconfig USB_GADGET
 	tristate "USB Gadget Support"
+	select USB_COMMON
 	select NLS
 	help
 	   USB is a master/slave protocol, organized with one master

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2016-03-30 13:58 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-23 16:45 [PATCH] usb: rework CONFIG_USB_COMMON logic Arnd Bergmann
2016-03-30 10:31 ` Felipe Balbi
2016-03-30 13:53   ` Arnd Bergmann
2016-03-30 13:56     ` Felipe Balbi
  -- strict thread matches above, loose matches on Subject: below --
2016-02-03 22:35 Arnd Bergmann
2016-02-04  6:39 ` Peter Chen
2016-02-04  8:20   ` Arnd Bergmann
2016-02-04 11:49 ` Felipe Balbi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox