Re: [PATCH v2 4/6] arm64: dts: qcom: sc8280xp: Add reference device

From: Konrad Dybcio
Date: Wed Jun 22 2022 - 11:30:30 EST




On 22.06.2022 17:26, Johan Hovold wrote:
> On Wed, Jun 22, 2022 at 05:10:50PM +0200, Konrad Dybcio wrote:
>>
>>
>> On 22.06.2022 16:48, Krzysztof Kozlowski wrote:
>>> On 22/06/2022 16:36, Konrad Dybcio wrote:
>>>>
>>>>
>>>> On 22.06.2022 15:43, Johan Hovold wrote:
>>>>> On Wed, Jun 22, 2022 at 02:33:02PM +0200, Konrad Dybcio wrote:
>>>>>> On 22.06.2022 06:12, Bjorn Andersson wrote:
>>>>>
>>>>>>> +&qup2_i2c5 {
>>>>>>> + clock-frequency = <400000>;
>>>>>>> +
>>>>>>> + pinctrl-names = "default";
>>>>>>> + pinctrl-0 = <&qup2_i2c5_default>, <&kybd_default>, <&tpad_default>;
>>>>>>> +
>>>>>>> + status = "okay";
>>>>>>> +
>>>>>> I think all device DTs generally have 'status = "okay"' at the beginning. Should we change that?
>>>>>>
>>>>>
>>>>> No, quite the opposite, status go at the end.
>>>> Then all other device DTs should be updated, as in dts/qcom/
>>>> everybody keeps it first in non-SoC/PMIC files.
>>>
>>> The word "should" is a bit too much here, but I agree, we can update all
>>> of them to match one, chosen approach.
>>>
>>> However the location for "status" property is more important for the
>>> definition of nodes in DTSI, because it's the least important piece
>>> there and also kind of expected - here go properties + I disable it. For
>>> me this is more important.
>
> Right, and this is the argument for keeping status last, something which
> is well defined.
>
> If you look at some of the qcom dtsi it's hard to determine whether a
> node is disabled or not because the status property does not actually go
> "first" but is rather typically mixed up somewhere in the middle (or
> upper part) of nodes.
>
>>> For node redefinition in DTS, I see benefits in two approaches:
>>> 1. Let me first enable the node and then configure it.
>>> 2. Let me configure the node and enable it.
>
> So for consistency, just put status last everywhere (dtsi and dts) and
> be done with it.
That works.


>
>> I looked around non-qcom device trees and it looks like the common
>> consensus is 2. Although I personally visually prefer 1. and it's
>> been used in all qcom arm64 DTs to date, I don't think there are any
>> blockers for us to switch to 1. going forward to keep it consistent.
>
> You mean inconsistent with the majority of dts? ;)
Not like anything involving Qualcomm was ever consistent or compliant with the majority :D

Konrad
>
>> That's if we want to clean up the existing ones, as changing the rules
>> and not applying that to the older files will make for a huge mess as
>> time goes on and will unnecessarily prolong the review process (as
>> existing DTs are commonly a source of reference and people make
>> certain choices based on those).
>
> That's a fair point. Consistency is good, and dt snipped tends to be
> copied, but it's not the end of the world to not update old dts either.
>
>> I don't think the DTS specification or the Linux docs explicitly which
>> one to choose though.
>
> No, but a praxis has been developed over time (e.g. compatible first,
> reg second, status last).
>
> Johan