Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754597AbbLJPSy (ORCPT ); Thu, 10 Dec 2015 10:18:54 -0500 Received: from mail.kernel.org ([198.145.29.136]:54888 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754296AbbLJPSu (ORCPT ); Thu, 10 Dec 2015 10:18:50 -0500 MIME-Version: 1.0 In-Reply-To: References: <1449621618-11900-1-git-send-email-tim.bird@sonymobile.com> <20151209041153.GA29549@rob-hp-laptop> <566824AD.4080003@sonymobile.com> <20151209195915.GJ4000@usrtlx11787.corpusers.net> From: Rob Herring Date: Thu, 10 Dec 2015 09:18:23 -0600 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v2 1/3] dt-binding: power: Add otg regulator binding To: Bjorn Andersson Cc: "Bird, Tim" , "pawel.moll@arm.com" , "mark.rutland@arm.com" , "ijc+devicetree@hellion.org.uk" , "sre@kernel.org" , "dbaryshkov@gmail.com" , "dwmw2@infradead.org" , "agross@codeaurora.org" , "devicetree@vger.kernel.org" , "linux-pm@vger.kernel.org" , "linux-arm-msm@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "tbird20d@gmail.com" , "Cavin, Courtney" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3338 Lines: 72 On Wed, Dec 9, 2015 at 3:08 PM, Rob Herring wrote: > On Wed, Dec 9, 2015 at 1:59 PM, Bjorn Andersson > wrote: >> On Wed 09 Dec 06:36 PST 2015, Rob Herring wrote: >> >>> On Wed, Dec 9, 2015 at 6:55 AM, Tim Bird wrote: >>> > On 12/08/2015 08:11 PM, Rob Herring wrote: >>> >> On Tue, Dec 08, 2015 at 04:40:16PM -0800, Tim Bird wrote: >>> >>> Add a binding for the regulator which controls the OTG chargepath switch. >>> >>> The OTG switch gets its power from pm8941_5vs1, and that should be >>> >>> expressed as a usb-otg-in-supply property in the DT node for the >>> >>> charger driver. The regulator name is "otg". >>> >>> [...] >>> >>> >>> +child nodes: >>> >>> +- otg: >>> >>> + Usage: optional >>> >>> + Description: This node defines a regulator used to control the direction >>> >>> + of VBUS voltage - specifically: whether to supply voltage >>> >>> + to VBUS for host mode operation of the OTG port, or allow >>> >>> + input voltage from external VBUS for charging. In the >>> >>> + hardware, the supply for this regulator comes from >>> >>> + usb-otg-in-supply. >>> >> >>> >> Doesn't this regulator need to have a name defined? >>> > >>> > I'm not sure what you mean. The regulator name is "otg", defined by the DT node >>> > name. The code requires that the DT node name be "otg", and defines a regulator >>> > with the same name. >>> > >>> > As far as I know, you have to define a DT label for the node, in order >>> > to reference this regulator with a phandle. Is that what you are referring to? >>> > I usually use "chg_otg" as the label. Are you asking that this be reflected >>> > in the example? >>> >>> You need a regulator-name property. Also, should should define valid >>> values for regulator-min-microvolt and regulator-max-microvolt. >>> >> >> The regulator has a name, derived from the node name, and this is >> significant. If the developer wants an additional human readable name >> for some reason they can use the optional regulator-name property. >> >> The regulator is a simple switch and as such inherits voltage properties >> from its supply. It should therefor not have any specified voltage >> range. >> >>> Thinking about this some more, the node name should be generic, so >>> just "regulator". The label does not need to be generic. >>> >> >> The name of the node is significant, as it's used for matching the >> regulator to an implementation. > > Ah yes, you are right. I forget what an oddball the regulator binding is. > > And if voltage switches don't need min and max properties, then it is > fine as is. Still, the empty node with no properties seems odd to me. Thinking some more about this, what bothers me is just having "otg {};" gives no clue as to what the node is for w/o the documentation. "otg" alone could mean several things. I think minimally, it needs either a node name that gives some indication it is a regulator or Vbus supply, a required regulator-name or even a comment. Rob -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/