On Wednesday 03 February 2016 19:54:02 Felipe Balbi wrote: > > hi, > > Bin Liu <b-liu@xxxxxx> writes: > > On Wed, Jan 20, 2016 at 11:56:34AM +0100, Arnd Bergmann wrote: > >> The phy-am335x driver accidentally selects 'USB_COMMON', which is > >> not correct as that symbol should indicate whether USB host or > >> target mode is enabled, but it might not: > >> > >> warning: (AM335X_PHY_USB) selects USB_COMMON which has unmet direct dependencies (USB_SUPPORT && (USB || USB_GADGET)) > > > > Is it possible to have a .config which has either USB nor USB_GADGET > > set but AM335X_PHY_USB is set to be in the situation as in the warning > > above? > > > >> > >> This changes the 'select' into 'depends on', as it should have > >> been initially. > > > > Using 'depends on' causes AM335x_PHY_USB driver unable to built-in, > > since USB_COMMON is an invisible option and its defualt is 'M'. > > > yeah, USB_COMMON is supposed to be selected, not depended upon. That means we should do something like the patch below? Fine with me too, but maybe you can write the changelog for that, as I don't know the background behind the logic. Arnd 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 -- 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