From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AB2D1C4332F for ; Wed, 20 Oct 2021 21:57:41 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 88931611CB for ; Wed, 20 Oct 2021 21:57:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230484AbhJTV7z (ORCPT ); Wed, 20 Oct 2021 17:59:55 -0400 Received: from netrider.rowland.org ([192.131.102.5]:40851 "HELO netrider.rowland.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S229695AbhJTV7x (ORCPT ); Wed, 20 Oct 2021 17:59:53 -0400 Received: (qmail 1140230 invoked by uid 1000); 20 Oct 2021 17:57:38 -0400 Date: Wed, 20 Oct 2021 17:57:38 -0400 From: Alan Stern To: Matthias Kaehlcke Cc: Mathias Nyman , Greg Kroah-Hartman , Rob Herring , Frank Rowand , Mathias Nyman , Felipe Balbi , devicetree@vger.kernel.org, Peter Chen , linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org, Bastien Nocera , Ravi Chandra Sadineni , Michal Simek , Douglas Anderson , Roger Quadros , Krzysztof Kozlowski , Stephen Boyd , Dmitry Osipenko , Fabio Estevam Subject: Re: [PATCH v16 6/7] usb: host: xhci-plat: Create platform device for onboard hubs in probe() Message-ID: <20211020215738.GA1140001@rowland.harvard.edu> References: <20210813195228.2003500-1-mka@chromium.org> <20210813125146.v16.6.I7a3a7d9d2126c34079b1cab87aa0b2ec3030f9b7@changeid> <20211020203720.GA1137200@rowland.harvard.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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