Re: [PATCH] docs: dt-bindings: add DTS Coding Style document

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am Donnerstag, 16. November 2023, 20:51:24 CET schrieb Krzysztof Kozlowski:
> On 16/11/2023 20:26, Heiko Stuebner wrote:
> > Hi Krzysztof,
> > Am Donnerstag, 16. November 2023, 19:12:18 CET schrieb Krzysztof Kozlowski:
> >> Document preferred coding style for Devicetree sources (DTS and DTSI),
> >> to bring consistency among all (sub)architectures and ease in reviews.
> >>
> >> Cc: AngeloGioacchino Del Regno <angelogioacchino.delregno@xxxxxxxxxxxxx>
> >> Cc: Arnd Bergmann <arnd@xxxxxxxx>
> >> Cc: Bjorn Andersson <andersson@xxxxxxxxxx>
> >> Cc: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
> >> Cc: Heiko Stuebner <heiko@xxxxxxxxx>
> >> Cc: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx>
> >> Cc: Matthias Brugger <matthias.bgg@xxxxxxxxx>
> >> Cc: Michal Simek <michal.simek@xxxxxxx>
> >> Cc: Neil Armstrong <neil.armstrong@xxxxxxxxxx>
> >> Cc: Nishanth Menon <nm@xxxxxx>
> >> Cc: Olof Johansson <olof@xxxxxxxxx>
> >> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
> >>
> > 
> >> +Order of Properties in Device Node
> >> +----------------------------------
> >> +
> >> +Following order of properties in device nodes is preferred:
> >> +
> >> +1. compatible
> >> +2. reg
> >> +3. ranges
> >> +4. All properties with values
> >> +5. Boolean properties
> > 
> > I guess the only thing I do have questions about is the part
> > 
> >> +4. All properties with values
> >> +5. Boolean properties
> > 
> > Is there a rationale for it? Because with it things like regulator-*
> > properties then end up in two different blocks.
> 
> Good point. It is only a matter of style that this:
> 
> foo {
> 	compatible = "foo";
> 	reg = <0x1>;
> 	clocks = <&clk>;
> 	wakeup-source;
> 	key-autorepeat;
> }
> 
> looks better to me than:
> 
> 
> foo {
> 	compatible = "foo";
> 	reg = <0x1>;
> 	key-autorepeat;
> 	wakeup-source;
> 	clocks = <&clk>;
> }
> 
> But you have good point that similar properties should be usually
> grouped together.
> 
> About which regulator properties are you thinking now? You mean the
> supplies or the provider?

I was thinking about the provider. There are 
	regulator-min-microvolt = <>;
and friends, but also
	regulator-boot-on;


I guess I would just go with

1. compatible
2. reg
3. ranges
4. All other properties
5. status (if applicable)
6. Child nodes

aka grouping the old 4+5 together. The difference is probably minimal
but doesn't create corner cases and you don't need to know if a property
has a value or is boolean when looking for it.


Heiko






[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux