Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp4543366pxk; Wed, 30 Sep 2020 05:54:11 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyD5gPDKFsdQHgGDPRb3Iq9kpGMinDBRO8a2gzz2JVo0N4KkbUZnVbwfj3j6SXf9UIjhdC3 X-Received: by 2002:aa7:c1d0:: with SMTP id d16mr2332404edp.209.1601470450974; Wed, 30 Sep 2020 05:54:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1601470450; cv=none; d=google.com; s=arc-20160816; b=uwfbiqsk9/sZdD8HnL3RJNYr6wAbLW+lWRv67rSWCM2H17glw8Pn7r9Z3kF4xjjWvq mhcgL71SF4NKTp3yJyeLX0fElBiufIMyG6EofTiqMaWKdRrWX/mSuZ4T2rgALD1tymV9 4HO4kjZq5kzg5q6fw7Gu5vIUV4Hgzn9T01CkxFQkO4Gku6WA+D2VXw5mcU0uHi7uPDQ6 5EUkxwum1jY86pF4oklWjkQeezSu/IoM/Fw5YtzDm78BfYRhOwjKS6T2Y/mNt2WFk/nx nMpZ5VvOLA+HjfdC+M7LIwozdb09BaahdSXUPn+uAUiOqG0uh5rhPzaD1kX6f2trWyZa 34tw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=Hi0H92Bq2J25J0s0e+A1at2PAKtZ7XP1o/TSnDx73G4=; b=X0ODIgS95lnqYCPZcCBD3aOJDcKnZnGnA0wtGouIM5TVWp7I2cfLMU2W/9jOB+ykeH Davbgawx0UScNv8EykfpUXiRrT8/SPu0cbqSpyiQEPwwayzlEKwMQQjeaWqtNObwsybW Vl+vO6F7bspMBkDwKZCH2C9DpZUnQUyxebw9mw6/hGBDJ+jBKNA1uI2iWhhcisHpQTw9 EC1+FgHUHy5AYiD/JDhVZI5CNYOqPkP/IoDorSJeMWoIWvk4gwxIqdDoq894Oz8saNHk ABg/8W614U1jzmVRNLHP+Lu9PBqbYIbtMgVG8BTQxFj+aQx03jsWjMy3jeIm64smunWm jGOw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=m7yGzf02; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v2si1069282ejy.65.2020.09.30.05.53.47; Wed, 30 Sep 2020 05:54:10 -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; dkim=pass header.i=@chromium.org header.s=google header.b=m7yGzf02; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729917AbgI3MtT (ORCPT + 99 others); Wed, 30 Sep 2020 08:49:19 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45804 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730081AbgI3MtS (ORCPT ); Wed, 30 Sep 2020 08:49:18 -0400 Received: from mail-pf1-x443.google.com (mail-pf1-x443.google.com [IPv6:2607:f8b0:4864:20::443]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EB824C0613D1 for ; Wed, 30 Sep 2020 05:49:17 -0700 (PDT) Received: by mail-pf1-x443.google.com with SMTP id n14so1112568pff.6 for ; Wed, 30 Sep 2020 05:49:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=Hi0H92Bq2J25J0s0e+A1at2PAKtZ7XP1o/TSnDx73G4=; b=m7yGzf02GWGB8fsRcfy7TJmA52mscCE9I5Fnon+Y8DyuRviSmLR7H3VOHu9S19kJ/m Gjnl/S1bkYmnbchn+2a9F97f/mlCm7DENsseOJUfN9RTS1GRLPh/02w1sF3zPxqIxMJ6 Zi4/zKf5JL4U9IGNbHWQY0rkagzsZnvjnPfI8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Hi0H92Bq2J25J0s0e+A1at2PAKtZ7XP1o/TSnDx73G4=; b=obsXGS6FEq43y/wavoiDQ8dbJ2YVEyH+WGoeRtqAaOykzP2hJhggkC4kQPfZFpb8v/ P4EwATVNZV2n0sPtOKfTUsQWwf/t+ruT7hbTRk9vnlqSer6yCkggrWTLN6o3EawONzcL XD5X5kLaMJInwBK3iZW3Dq+K+0GjmGuD3Ui8G83kGTcKUUH9CYf6NJ/NlpDrRw/UX1fb MvKEt+AwGYClR0WDWhzDLQUwsL4xi+UKKRK1WYHGNkZF8/V+7uYxS/dZA8tPq3GiWDXC oBxg53krO8EpQ7qUBruQJcnngyxHkGRqwTzwq3N+Q3TOvuZiPCjUQCYyAj/iajPI6opO b6zA== X-Gm-Message-State: AOAM533LntLN3IAs2Zwgb1iJX/9ILrhA9rJ0cwTGl24UP66Y54PiU4VD R7T/9aoqVAJ1+S19CPcLFE6s6g== X-Received: by 2002:a63:1958:: with SMTP id 24mr1271947pgz.326.1601470157196; Wed, 30 Sep 2020 05:49:17 -0700 (PDT) Received: from localhost ([2620:15c:202:1:f693:9fff:fef4:e70a]) by smtp.gmail.com with ESMTPSA id a1sm2471540pfr.12.2020.09.30.05.49.16 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 30 Sep 2020 05:49:16 -0700 (PDT) Date: Wed, 30 Sep 2020 05:49:15 -0700 From: Matthias Kaehlcke To: Alan Stern 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: <20200930124915.GA1826870@google.com> References: <20200928101326.v4.1.I248292623d3d0f6a4f0c5bc58478ca3c0062b49a@changeid> <20200929201701.GA1080459@bogus> <20200929220912.GF1621304@google.com> <20200930013229.GB194665@rowland.harvard.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20200930013229.GB194665@rowland.harvard.edu> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Alan, On Tue, Sep 29, 2020 at 09:32:29PM -0400, Alan Stern wrote: > 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? Yes > 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. Thanks for your suggestion. Datasheets from different manufacturers refer to these ICs as "USB hub controller". Calling the node "usb-hub-controller" would indeed help to distinguish it from the USB hub devices and represent existing hardware. And the USB device could have a "hub-controller" property, which also would be clearer than the current "hub" property. Rob, would this help to convince you? Thanks Matthias