Re: [PATCH] arm64: dts: juno: align thermal zone names with bindings

From: Rob Herring
Date: Tue Jan 02 2024 - 13:10:05 EST


On Sat, Dec 9, 2023 at 10:16 AM Krzysztof Kozlowski
<krzysztof.kozlowski@xxxxxxxxxx> wrote:
>
> Thermal bindings require thermal zone node names to match
> certain patterns:
>
> juno.dtb: thermal-zones: 'big-cluster', 'gpu0', 'gpu1', 'little-cluster', 'pmic', 'soc'
> do not match any of the regexes: '^[a-zA-Z][a-zA-Z0-9\\-]{1,12}-thermal$', 'pinctrl-[0-9]+'

You've just traded this warning for these:

6 thermal-zones: 'little-cluster-thermal' does not match any of
the regexes: '^[a-zA-Z][a-zA-Z0-9\\-]{1,12}-thermal$',
'pinctrl-[0-9]+'
4 thermal-zones: gpu1-thermal: 'trips' is a required property
4 thermal-zones: gpu0-thermal: 'trips' is a required property
4 thermal-zones: big-cluster-thermal: 'trips' is a required property

Last I checked this, it looked like the length of the child names was
limited because the thermal subsys uses the node names for its naming
which is limited to 20 chars (with null). Though the regex here allows
for 21 chars without nul. Looks like a double off by one error.

The thought I had at the time was to make the kernel drop '-thermal'
from its names. Might be an (Linux) ABI issue if userspace cares (I
think it shouldn't). Also, I'm not sure how the kernel handles the
names overflowing. Maybe it is fine and we can just extend the length
in the schema from 12 to 18 (plus the 1 starting char).

Rob