On Wed, Oct 20, 2021 at 02:01:21PM -0700, Matthias Kaehlcke wrote: > On Wed, Oct 20, 2021 at 04:37:20PM -0400, Alan Stern wrote: > > On Wed, Oct 20, 2021 at 01:27:40PM -0700, Matthias Kaehlcke wrote: > > > Hi Mathias, > > > > > > On Wed, Oct 20, 2021 at 04:05:37PM +0300, Mathias Nyman wrote: > > > > If separate devices for controlling onboard hub power is the right solution then > > > > how about creating the onboard hub device in usb_add_hcd() (hcd.c), and > > > > store it in struct usb_hcd. > > > > > > > > A bit like how the roothub device is created, or PHYs are tuned. > > > > > > Sure, that sounds feasible, even better if it's handled in a single place > > > and different types of controllers don't have to add support separately. > > > > Bear in mind that this would prevent you from working with onboard > > non-root hubs. > > My goal is to (architecturally) support nested hubs, but TBH I haven't > looked much into such a configuration since I don't have hardware for > testing. My assumption was that support for onboard hubs connected to > non-root hubs whould have to be added to the generic hub driver. > > Could you elaborate in how far you think it would be different for > xhci_plat vs generic hcd? A lot of this material has slipped from my mind. However, I don't see much difference between those two approaches. Alan Stern