Re: [PATCH v3 2/2] arm64: dts: qcom: Add configuration for PMI8950 peripheral

From: Krzysztof Kozlowski
Date: Sun Dec 11 2022 - 15:12:13 EST


On 10/12/2022 17:31, Marijn Suijten wrote:
> On 2022-12-10 11:58:24, Krzysztof Kozlowski wrote:
>> On 09/12/2022 21:38, Marijn Suijten wrote:
>>> On 2022-12-09 17:54:50, Luca Weiss wrote:
>>>> On Donnerstag, 8. Dezember 2022 12:20:55 CET Marijn Suijten wrote:
>>>>> On 2022-12-08 11:23:17, Krzysztof Kozlowski wrote:
>>>>>> On 08/12/2022 11:12, Marijn Suijten wrote:
>>>>>>> On 2022-12-04 17:19:05, Luca Weiss wrote:
>>>>>>>> On Freitag, 2. Dezember 2022 10:36:58 CET Marijn Suijten wrote:
>>>>>>>> [..]
>>>>>>>>
>>>>>>>> So the way this patch does it is good or does it need changes?
>>>>>>>
>>>>>>> Except the typo(s?) pointed out in my first reply, this is good to go.
>>>>>>>
>>>>>>> If we stick with generic adc-chan node names that should be documented
>>>>>>> in the bindings IMO, as it is currently only captured implicitly in the
>>>>>>> examples. Krzysztof, what is your thought on this?
>>>>>>
>>>>>> If I understand correctly, the outcome of other discussion [1] was to
>>>>>> use labels and generic node names.
>>>>>
>>>>> The outcome was to use labels in the driver and disregard node names as
>>>>> the new fwnode API clobbers those names by including the @xx register
>>>>> bit.
>>>>>
>>>>> (I'll follow up with Jonathan whether or not to remove the current
>>>>> fallback to node names, as [1] ended up discussing many different issues
>>>>> and nits)
>>>>>
>>>>>> In such case the patch was correct
>>>>>> (except other comments).
>>>>>
>>>>> As a consequence it _doesn't matter_ how nodes are named, and we _can_
>>>>> use generic node names. My question for you is whether we should, and
>>>>> if we should lock that in via dt-bindings to guide everyone towards
>>>>> using labels (which i did _not_ do in the recently-landed PM8950 and
>>>>> PM6125, but will send followup for).
>>>>
>>>> FYI the patch has been merged already and is now in linux-next
>>>> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/arch/arm64/boot/dts/qcom/pmi8950.dtsi?id=0d97fdf380b478c358c94f50f1b942e87f407b9b
>>>>
>>>> If you have any changes that need to be done please send a follow-up patch.
>>>
>>> Unfortunately saw that today as well, well after sending this reply. I
>>> would've loved to correct the pmi8950_gpio label _gpios before someone
>>
>> I don't understand what is there to correct. The "pmi8950_gpio" is a
>> correct label. There is no single rule saying label should have "s" at
>> the end. The only rules are: using underscores and having similar naming
>> (e.g. mdss_ for all display labels).
>
> If we were able to have rules for labels, would I then be allowed to
> "correct" this?

If we had rules, yes. But we do not have. That's like - I will rename
all variables because of some non-existing rules... There is no rule, no
coding style (except what I wrote)...

> The inconsistency between DTs is /super/ annoying (and
> it looks wrong to have a singular _gpio named thing contain /multiple
> gpios/),

What do you mean - looks wrong? It's just a label which does not matter,
so how it can be wrong?

> but just because we can't express this in dt-bindings (or so I
> think) we shouldn't change it?

No, it just does not matter, so there is no benefit to change it, in my
opinion, if label is readable and follows generic convention
(underscores). Of course someone might treat its readability different
and maybe for someone the missing "s" at the end is important. I am just
saying that, unlike the node names, the label has little impact/effect.

However just be clear - this change also does not harm, so I am
perfectly fine with it.

Best regards,
Krzysztof