Re: [PATCH RESEND] arm: topology: Fix missing clock-frequency property warning

From: Stefan Wiehler
Date: Thu Feb 01 2024 - 10:04:38 EST


Does this mean the /cpus property is like a default for when a CPU node
doesn't specify the clock frequency, or does it mean that the /cpus
property should only exist when all the values for each CPU are
identical and thus the individual CPU node clock frequency should
not be specified.

Good question, the device tree specification in Section 3.7 [1] says:

> The /cpus node may contain properties that are common across cpu
nodes. See Section 3.8 for details.

And in Section 3.8 [2]:

> Properties that have identical values across cpu nodes may be placed
> in the /cpus node instead. A client program must first examine a
> specific cpu node, but if an expected property is not found then it
> should look at the parent /cpus node. This results in a less verbose
> representation of properties which are identical across all CPUs.

So I think it is pretty clear that it should only be used for common/identical values.

Aren't you adding new property? Is it already documented in the
bindings? After a quick look I think this is not documented.

You are right, clock-frequency is not mentioned neither in arm/cpus.yaml nor in any other <arch>/cpus.yaml binding, but the DT spec has it as a required property [3]. Should I add clock-frequency to all <arch>/cpus.yaml bindings? Only the ARM one explicitly mentions following the DT spec.

Kind regards,

Stefan

[1] https://devicetree-specification.readthedocs.io/en/latest/chapter3-devicenodes.html#cpus-node-properties
[2] https://devicetree-specification.readthedocs.io/en/latest/chapter3-devicenodes.html#cpus-cpu-node-properties
[3] https://devicetree-specification.readthedocs.io/en/latest/chapter3-devicenodes.html#general-properties-of-cpus-cpu-nodes