On 01/02/2024 16:03, Stefan Wiehler wrote: >> 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. It should go to dtschema. dtschema cpu.yaml has it, so you need to propose such to cpus.yaml, probably you could experiment with: not: - required: - clock-frequency - patternProperties: cpu@.... - required: - clock-frequency Anyway, you cannot just keep adding some OF properties to the code without documenting them. Best regards, Krzysztof