Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp4216357pxk; Tue, 29 Sep 2020 18:33:56 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxx2SYsD6UiUi/yPHLiNLJZbAUtyja3gSl451FKr60r1jiJrRkcRSdXL6n5HAJHX5JnGZfG X-Received: by 2002:a17:906:4685:: with SMTP id a5mr455338ejr.446.1601429635968; Tue, 29 Sep 2020 18:33:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1601429635; cv=none; d=google.com; s=arc-20160816; b=ixgXey7HwelHXi19VaErnpFdPTOIrQHkeGweOTknEZ+6LeF7iorvTzt92pedtGM/HS t5ZPaVl3Qp7Y/oQh/MBVnOTcwm1TwRwCZMUHxUNfIdlziisdeDW1+Uh8ho7YmOfi+GRa qOy3oOhgxPpKqOJ3SpQrG+h4aq/u95a91P3jGo3YFYYqkPH2vLw/00CY/EZCb5oux7Iu kuYLEIffT+lkN/Q4ID64YQix1YmWNTuHsDDMOBtFxKndiAHuLKc74qhfFPag5B8O7Sjh B0z/R78RTdef/iOLIjKhMAXTF8A9kpeZdEcq2NRRHCGsZjLdmEEAZkqbq/Osgu07gOnk wAmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=4WIUvGcIZDYEmXmpYjPN0DtsDR2Qhu448bwkSy4VpME=; b=0elhGvxPWKaZJGztTe4OEG/p+T2GZiLH7Bss9DNMsCUJ/QoOvtj39uKiqlvRwrzCXc Vq9XGlydX4PdZsmp6rkqjQ7wA1sKTSccGB/rsnlOKNog4JTvdxrX+OGDOArXLRzQGnwQ ylgGtqEVDmLUNZU0rDj2nSJbbu8Js8+SVrMPIiacKml9SGE++L0dhfYlZvmYDyptrSiK UEq/H35YxVzBoxkz6telMqezob/HmP1N3axyxXXhrvUnTxpwc8kNTeYtoT3tZCXK10iP 6qeXybHstc4W7GteUmX4uzo4EjB1ITYICka4mkhagBm7Ue1H4u0PNz277wMBk2qIHhz1 17EA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e9si147709eji.535.2020.09.29.18.33.33; Tue, 29 Sep 2020 18:33:55 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729448AbgI3Bcb (ORCPT + 99 others); Tue, 29 Sep 2020 21:32:31 -0400 Received: from netrider.rowland.org ([192.131.102.5]:57367 "HELO netrider.rowland.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1726689AbgI3Bca (ORCPT ); Tue, 29 Sep 2020 21:32:30 -0400 Received: (qmail 194760 invoked by uid 1000); 29 Sep 2020 21:32:29 -0400 Date: Tue, 29 Sep 2020 21:32:29 -0400 From: Alan Stern To: Matthias Kaehlcke Cc: Rob Herring , Greg Kroah-Hartman , Frank Rowand , linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org, Bastien Nocera , Stephen Boyd , Douglas Anderson , Ravi Chandra Sadineni , Krzysztof Kozlowski , devicetree@vger.kernel.org, Peter Chen Subject: Re: [PATCH v4 1/2] dt-bindings: usb: Add binding for discrete onboard USB hubs Message-ID: <20200930013229.GB194665@rowland.harvard.edu> References: <20200928101326.v4.1.I248292623d3d0f6a4f0c5bc58478ca3c0062b49a@changeid> <20200929201701.GA1080459@bogus> <20200929220912.GF1621304@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200929220912.GF1621304@google.com> User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Sep 29, 2020 at 03:09:12PM -0700, Matthias Kaehlcke wrote: > Hi Rob, > > On Tue, Sep 29, 2020 at 03:17:01PM -0500, Rob Herring wrote: > > As I said in prior version, this separate node and 'hub' phandle is not > > going to work. You are doing this because you want a platform driver for > > "realtek,rts5411". That may be convenient for Linux, but doesn't reflect > > the h/w. > > I agree that the hardware representation isn't totally straightforward, however > the description isn't limited to Linux: > > - there is a single IC (like the Realtek RTS5411) > - the IC may require several resources to be initialized in a certain way > - this may require executing hardware specific code by some driver, which > isn't a USB device driver > - the IC can 'contain' multiple USB hub devices, which can be connected to > separate USB busses > - the IC doesn't have a control bus, which somewhat resembles the > 'simple-audio-amplifier' driver, which also registers a platform device > to initialize its resources > > - to provide the functionality of powering down the hub conditionally during > system suspend the driver (whether it's a platform driver or something else) > needs know which USB (hub) devices correspond to it. This is a real world > problem, on hardware that might see wide distribution. > > There were several attempts to solve this problem in the past, but none of them > was accepted. So far Alan Stern seems to think the driver (not necessarily the > binding as is) is a suitable solution, Greg KH also spent time reviewing it, > without raising conceptual concerns. So it seems we have solution that would > be generally landable from the USB side. > > I understand that your goal is to keep the device tree sane, which I'm sure > can be challenging. If you really can't be convinced that the binding might > be acceptable in its current or similiar form then please offer guidance > on possible alternatives which allow to achieve the same functionality. You're really trying to represent this special IC in DT, right? Maybe if you don't call it a "hub" but instead something that better reflects what it actually is and does, the description will be more palatable. Alan Stern