Re: #thermal-sensor-cells under protocol@15

Laszlo Ersek <[email protected]> Wed, 29 Jul 2026 11:20:54 +0200
Newsgroups org.kernel.vger.arm-scmi,org.kernel.vger.linux-devicetree
Message-ID <[email protected]>
On 7/28/26 22:10, Sudeep Holla wrote:

> The cells property is not for the SCMI sensor itself, it is for the
> consumer of this node which currently is only thermal subsystem.

> On Tue, Jul 28, 2026 at 04:33:59PM +0200, Laszlo Ersek wrote:
>> (3) Where exactly does the kernel consume "#thermal-sensor-cells" in
>> the proposed (general) sense?
>>
>
> No where, I got confused earlier as mentioned above. It is not needed
> unless you have use case. Please present if you have one.

Thanks for the clarification.

IIUC, this means my original point stands: the #thermal-sensor-cells
property is optional, and only needed if SCMI sensors (the "provider")
are referenced by a consumer, such as "thermal-sensors".

What about the following update then:

| diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
| index d06cca9273c4..fde9d06342f6 100644
| --- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
| +++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
| @@ -223,23 +223,26 @@ properties:
|    protocol@15:
|      $ref: '#/$defs/protocol-node'
|      unevaluatedProperties: false
|
|      properties:
|        reg:
|          const: 0x15
|
|        '#thermal-sensor-cells':
|          const: 1
| -
| -    required:
| -      - '#thermal-sensor-cells'
| +        description:
| +          If other nodes (such as a list property like "thermal-sensors")
| +          reference SCMI sensors from the "protocol@15" node, then the
| +          "#thermal-sensor-cells" property is required; otherwise, it is
| +          unneeded. "#thermal-sensor-cells" specifies the width of SCMI Sensor
| +          IDs for referrers, expressed as a number of 32-bit cells.
|
|    protocol@16:
|      $ref: '#/$defs/protocol-node'
|      unevaluatedProperties: false
|
|      properties:
|        reg:
|          const: 0x16
|
|        '#reset-cells':

If you think this is unnecessary complication or verbosity, I can drop
it; it's just that I'd like to construct a minimal "protocol@15" node
for my use case (a particular DTS I'm extending), and be able to justify
every little part of that addition. Presently I can't justify
"#thermal-sensor-cells", so I'd like to leave it out -- but currently
that would conflict with the documentation (even though it wouldn't
cause a problem for any of the drivers included / activated).

Thanks!
Laszlo