From: Matthias Kaehlcke <mka@chromium.org>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Rob Herring <robh+dt@kernel.org>,
Frank Rowand <frowand.list@gmail.com>,
Mathias Nyman <mathias.nyman@intel.com>,
Felipe Balbi <balbi@kernel.org>,
linux-kernel@vger.kernel.org,
Krzysztof Kozlowski <krzk@kernel.org>,
Stephen Boyd <swboyd@chromium.org>,
Peter Chen <peter.chen@kernel.org>,
linux-usb@vger.kernel.org, devicetree@vger.kernel.org,
Douglas Anderson <dianders@chromium.org>,
Roger Quadros <rogerq@kernel.org>,
Michal Simek <michal.simek@xilinx.com>,
Ravi Chandra Sadineni <ravisadineni@chromium.org>,
Bastien Nocera <hadess@hadess.net>, Andrew Lunn <andrew@lunn.ch>,
Aswath Govindraju <a-govindraju@ti.com>,
Dmitry Osipenko <digetx@gmail.com>,
Gregory Clement <gregory.clement@bootlin.com>,
Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>,
Lukas Bulwahn <lukas.bulwahn@gmail.com>,
Pawel Laszczak <pawell@cadence.com>,
Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>,
Tony Lindgren <tony@atomide.com>,
linux-arm-kernel@lists.infradead.org, linux-omap@vger.kernel.org,
linux-samsung-soc@vger.kernel.org
Subject: Re: [PATCH v17 7/7] usb: Specify dependencies on USB_XHCI_PLATFORM with 'depends on'
Date: Thu, 18 Nov 2021 09:16:14 -0800 [thread overview]
Message-ID: <YZaKXtRW7oO1SNbG@google.com> (raw)
In-Reply-To: <20211117022144.GA158646@rowland.harvard.edu>
On Tue, Nov 16, 2021 at 09:21:44PM -0500, Alan Stern wrote:
> On Tue, Nov 16, 2021 at 12:07:39PM -0800, Matthias Kaehlcke wrote:
> > Some USB controller drivers that depend on the xhci-plat driver
> > specify this dependency using 'select' in Kconfig. This is not
> > recommended for symbols that have other dependencies as it may
> > lead to invalid configurations. Use 'depends on' to specify the
> > dependency instead of 'select'.
> >
> > For dwc3 specify the dependency on USB_XHCI_PLATFORM in
> > USB_DWC3_HOST and USB_DWC3_DUAL_ROLE. Also adjust the
> > dependencies of USB_DWC3_CORE to make sure that at least one
> > of USB_DWC3_HOST, USB_DWC3_GADGET or USB_DWC3_DUAL_ROLE can be
> > selected.
> >
> > Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> > Reviewed-by: Roger Quadros <rogerq@kernel.org>
> > Reviewed-by: Douglas Anderson <dianders@chromium.org>
> > ---
> >
> > Changes in v17:
> > - removed explicit dependency on USB from USB_DWC3
> > - added 'Reviewed-by' tags from Roger and Doug
> >
> > Changes in v16:
> > - none
> >
> > Changes in v15:
> > - adjusted dependencies of USB_DWC3_CORE to make sure it can only
> > be enabled when at least one of USB_DWC3_HOST, USB_DWC3_GADGET
> > or USB_DWC3_DUAL_ROLE is selectable
> > - updated commit message
> >
> > Changes in v14:
> > - none
> >
> > Changes in v13:
> > - patch added to the series
>
> > diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
> > index d1d926f8f9c2..e5e612f143a1 100644
> > --- a/drivers/usb/host/Kconfig
> > +++ b/drivers/usb/host/Kconfig
> > @@ -80,7 +80,7 @@ config USB_XHCI_MTK
> >
> > config USB_XHCI_MVEBU
> > tristate "xHCI support for Marvell Armada 375/38x/37xx"
> > - select USB_XHCI_PLATFORM
> > + depends on USB_XHCI_PLATFORM
> > depends on HAS_IOMEM
> > depends on ARCH_MVEBU || COMPILE_TEST
> > help
> > @@ -112,9 +112,9 @@ config USB_EHCI_BRCMSTB
> > config USB_BRCMSTB
> > tristate "Broadcom STB USB support"
> > depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST
> > + depends on !USB_XHCI_HCD || USB_XHCI_PLATFORM
> > select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
> > select USB_EHCI_BRCMSTB if USB_EHCI_HCD
> > - select USB_XHCI_PLATFORM if USB_XHCI_HCD
> > help
> > Enables support for XHCI, EHCI and OHCI host controllers
> > found in Broadcom STB SoC's.
>
> It should be pointed out that this now requires people with xHCI systems
> to actively turn on CONFIG_USB_XHCI_PLATFORM before they can enable
> CONFIG_USB_BRCMSTB. Before, that was not necessary. Some users might
> get confused and not realize what is needed. Perhaps something should
> be added to the "help" text.
I agree that the change could cause confusion, I'm not sure though if
adding something to the "help" text is a good mitigation. Users won't see
the text unless they can select the option, which requires
CONFIG_USB_XHCI_PLATFORM to be enabled. Also the dependencies are specified
nearby (and displayed), so it seems similar to a code comment on something
that the code evidently does (e.g. "initialize foobar with 0").
On a different note: I'm considering to break the CONFIG_USB_XHCI_PLATFORM
related patches out of the onboard_usb_hub series, since the driver
doesn't any longer depend on xhci_plat. In that sense I'm also open
to abandon those patches, if they aren't considered an improvement on
their own.
next prev parent reply other threads:[~2021-11-18 17:16 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-16 20:07 [PATCH v17 0/7] usb: misc: Add onboard_usb_hub driver Matthias Kaehlcke
2021-11-16 20:07 ` [PATCH v17 1/7] " Matthias Kaehlcke
2021-11-18 0:11 ` Doug Anderson
2021-11-18 17:52 ` Matthias Kaehlcke
2021-12-10 16:51 ` Matthias Kaehlcke
2021-12-20 20:05 ` Dmitry Osipenko
2021-12-30 20:17 ` Matthias Kaehlcke
2022-01-01 12:23 ` Dmitry Osipenko
2022-01-12 19:00 ` Matthias Kaehlcke
2021-11-16 20:07 ` [PATCH v17 2/7] of/platform: Add stubs for of_platform_device_create/destroy() Matthias Kaehlcke
2021-11-22 17:43 ` Matthias Kaehlcke
2021-12-01 22:31 ` Matthias Kaehlcke
2021-11-16 20:07 ` [PATCH v17 3/7] usb: core: hcd: Create platform devices for onboard hubs in probe() Matthias Kaehlcke
2021-11-18 0:03 ` Doug Anderson
2021-11-16 20:07 ` [PATCH v17 4/7] arm64: dts: qcom: sc7180-trogdor: Add nodes for onboard USB hub Matthias Kaehlcke
2021-11-18 0:03 ` Doug Anderson
2021-11-18 18:43 ` Matthias Kaehlcke
2021-11-16 20:07 ` [PATCH v17 5/7] ARM: configs: Explicitly enable USB_XHCI_PLATFORM where needed Matthias Kaehlcke
2021-11-16 20:07 ` [PATCH v17 6/7] arm64: defconfig: Explicitly enable USB_XHCI_PLATFORM Matthias Kaehlcke
2021-11-16 20:07 ` [PATCH v17 7/7] usb: Specify dependencies on USB_XHCI_PLATFORM with 'depends on' Matthias Kaehlcke
2021-11-17 2:21 ` Alan Stern
2021-11-18 17:16 ` Matthias Kaehlcke [this message]
2021-12-16 23:56 ` Matthias Kaehlcke
2021-12-17 0:47 ` Dmitry Osipenko
2021-12-20 18:44 ` Matthias Kaehlcke
2021-12-20 19:59 ` Dmitry Osipenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YZaKXtRW7oO1SNbG@google.com \
--to=mka@chromium.org \
--cc=a-govindraju@ti.com \
--cc=andrew@lunn.ch \
--cc=balbi@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dianders@chromium.org \
--cc=digetx@gmail.com \
--cc=frowand.list@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=gregory.clement@bootlin.com \
--cc=hadess@hadess.net \
--cc=krzk@kernel.org \
--cc=krzysztof.kozlowski@canonical.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=lukas.bulwahn@gmail.com \
--cc=mathias.nyman@intel.com \
--cc=michal.simek@xilinx.com \
--cc=pawell@cadence.com \
--cc=peter.chen@kernel.org \
--cc=ravisadineni@chromium.org \
--cc=robh+dt@kernel.org \
--cc=rogerq@kernel.org \
--cc=sebastian.hesselbarth@gmail.com \
--cc=stern@rowland.harvard.edu \
--cc=swboyd@chromium.org \
--cc=tony@atomide.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).