From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755475AbcBDGnI (ORCPT ); Thu, 4 Feb 2016 01:43:08 -0500 Received: from mail-pf0-f170.google.com ([209.85.192.170]:33405 "EHLO mail-pf0-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754819AbcBDGnF (ORCPT ); Thu, 4 Feb 2016 01:43:05 -0500 Date: Thu, 4 Feb 2016 14:39:16 +0800 From: Peter Chen To: Arnd Bergmann Cc: Felipe Balbi , Bin Liu , Felipe Balbi , balbif@gmail.com, Greg Kroah-Hartman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] usb: rework CONFIG_USB_COMMON logic Message-ID: <20160204063916.GB11158@shlinux2> References: <6169754.IJXY8FWj5l@wuerfel> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <6169754.IJXY8FWj5l@wuerfel> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Feb 03, 2016 at 11:35:26PM +0100, Arnd Bergmann wrote: > 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 > --- > 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 > Reviewed-by: Peter Chen -- Best Regards, Peter Chen