[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMuHMdVSAgihFAuPecyrR+Wvzqr58z_fkWkShOSu+HnHzZnW2g@mail.gmail.com>
Date: Wed, 29 Nov 2023 09:47:42 +0100
From: Geert Uytterhoeven <geert@...ux-m68k.org>
To: Francesco Dolcini <francesco@...cini.it>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
Matthias Brugger <matthias.bgg@...il.com>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@...labora.com>,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
linux-mediatek@...ts.infradead.org, Andrew Davis <afd@...com>,
Andrew Lunn <andrew@...n.ch>, Arnd Bergmann <arnd@...db.de>,
Bjorn Andersson <andersson@...nel.org>,
Chen-Yu Tsai <wens@...nel.org>,
Dmitry Baryshkov <dmitry.baryshkov@...aro.org>,
Heiko Stuebner <heiko@...ech.de>,
Jonathan Corbet <corbet@....net>,
Konrad Dybcio <konrad.dybcio@...aro.org>,
Michal Simek <michal.simek@....com>,
Neil Armstrong <neil.armstrong@...aro.org>,
Nishanth Menon <nm@...com>, Olof Johansson <olof@...om.net>,
Rafał Miłecki <zajec5@...il.com>,
linux-rockchip@...ts.infradead.org,
linux-samsung-soc@...r.kernel.org,
linux-amlogic@...ts.infradead.org, linux-arm-msm@...r.kernel.org,
workflows@...r.kernel.org, linux-doc@...r.kernel.org
Subject: Re: [PATCH v3] docs: dt-bindings: add DTS Coding Style document
Hi Francesco,
On Wed, Nov 29, 2023 at 8:29 AM Francesco Dolcini <francesco@...cini.it> wrote:
> On Sat, Nov 25, 2023 at 07:44:22PM +0100, Krzysztof Kozlowski wrote:
> > Document preferred coding style for Devicetree sources (DTS and DTSI),
> > to bring consistency among all (sub)architectures and ease in reviews.
>
> Thank Krzysztof, we had most of this collected as BKM in some internal
> documents and it's great to see the effort to consolidate this and add
> it to the kernel documentation.
>
> > ---
> > +Following order of properties in device nodes is preferred:
> > +
> > +1. compatible
> > +2. reg
> > +3. ranges
> > +4. Standard/common properties (defined by common bindings, e.g. without
> > + vendor-prefixes)
> > +5. Vendor-specific properties
> > +6. status (if applicable)
> > +7. Child nodes, where each node is preceded with a blank line
>
> On point 4, do you have a more explicit way to define what is an actual
> standard/common property? You mention the vendor-prefixes as an example,
> is this just an example or this is the whole definition?
I think there are three classes of standard properties:
1. Device Tree Specification (from devicetree.org)
2. dt-schema
3. Common subsystem bindings (Documentation/devicetree/bindings/)
(may be moved to 2).
> What would be the order for this for example (from an existing DTS file)?
>
> reg_sdhc1_vmmc: regulator-sdhci1 {
> compatible = "regulator-fixed";
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_sd1_pwr_en>;
> enable-active-high;
> gpio = <&main_gpio0 29 GPIO_ACTIVE_HIGH>;
> off-on-delay-us = <100000>;
> regulator-max-microvolt = <3300000>;
> regulator-min-microvolt = <3300000>;
> regulator-name = "+V3.3_SD";
> startup-delay-us = <2000>;
> };
>
> I guess the point that is not obvious to me here is where do we want
> pinctrl. I like it at position between 3 and 4, the rationale is that is
> a very frequent property and this way it will be in a similar place for
> every node.
The pinctrl properties are only present in board DTS files, not in
SoC DTSi files. There are two classes of them:
1. Extension of on-SoC devices, where they are added to already
existing nodes, defined in the SoC DTSi files, e.g. (from the same
existing DTS file):
&cpsw3g {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_rgmii1>;
status = "disabled";
};
2. Pure board devices, in new nodes (e.g. your regulator example).
These are less common, so I don't even know from the top of my
mind when I last added one, and where ;-)
I'd guess after all standard properties?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
Powered by blists - more mailing lists