[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201006141820.GA416765@rowland.harvard.edu>
Date: Tue, 6 Oct 2020 10:18:20 -0400
From: Alan Stern <stern@...land.harvard.edu>
To: Matthias Kaehlcke <mka@...omium.org>
Cc: Doug Anderson <dianders@...omium.org>,
Rob Herring <robh@...nel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Frank Rowand <frowand.list@...il.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Linux USB List <linux-usb@...r.kernel.org>,
Bastien Nocera <hadess@...ess.net>,
Stephen Boyd <swboyd@...omium.org>,
Ravi Chandra Sadineni <ravisadineni@...omium.org>,
Krzysztof Kozlowski <krzk@...nel.org>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@...r.kernel.org>, Peter Chen <peter.chen@....com>
Subject: Re: [PATCH v4 1/2] dt-bindings: usb: Add binding for discrete
onboard USB hubs
On Mon, Oct 05, 2020 at 05:45:10PM -0700, Matthias Kaehlcke wrote:
> I did some prototyping, it seems a binding like this would work for
> case a) or b):
>
> &usb_1_dwc3 {
> hub_2_0: hub@1 {
> compatible = "usbbda,5411";
> reg = <1>;
> };
>
> hub_3_0: hub@2 {
> compatible = "usbbda,411";
> reg = <2>;
> vdd-supply = <&pp3300_hub>;
> companion-hubs = <&hub_2_0>;
> };
> };
>
> It still requires specifying both hubs (which reflects the actual wiring).
> Supporting something like "reg = <1 2>" seems more complex due to the need to
> obtain the hub USB device at runtime (a DT node makes that trivial), possibly
> this could be solved by adding new APIs.
>
> In terms of implementation would I envision to keep a platform driver. This
> would keep the hubby parts out of xhci-plat (except for populating the platform
> devices), support systems with cascaded hubs and provide a device for the sysfs
> attribute.
What will you do if a system has more than one of these power-regulated
hubs? That is, how will the user know which platform device handles the
power control for a particular hub (and vice versa)? You'd probably
have to create a pair of symlinks going back and forth in the sysfs
directories.
Wouldn't it be easier to put the power-control attribute directly in the
hub's sysfs directory (or .../power subdirectory)?
Alan Stern
Powered by blists - more mailing lists