mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-22 10:31:08 +00:00
dt-bindings: firmware: arm,scmi: Restrict protocol child node properties
The SCMI protocol child nodes are missing any constraints on unknown properties. Specifically, either 'unevaluatedProperties' or 'additionalProperties' is needed. The current structure with a regex match for all child nodes doesn't work for this purpose, so let's move the common properties '$defs' entry which each specific protocol node can reference and set 'unevaluatedProperties: false'. Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> Link: https://lore.kernel.org/r/20230124222023.316089-1-robh@kernel.org Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
parent
f3531d1acb
commit
df4fdd0db4
1 changed files with 33 additions and 10 deletions
|
@ -100,7 +100,9 @@ properties:
|
|||
Channel specifier required when using OP-TEE transport.
|
||||
|
||||
protocol@11:
|
||||
type: object
|
||||
$ref: '#/$defs/protocol-node'
|
||||
unevaluatedProperties: false
|
||||
|
||||
properties:
|
||||
reg:
|
||||
const: 0x11
|
||||
|
@ -112,7 +114,9 @@ properties:
|
|||
- '#power-domain-cells'
|
||||
|
||||
protocol@13:
|
||||
type: object
|
||||
$ref: '#/$defs/protocol-node'
|
||||
unevaluatedProperties: false
|
||||
|
||||
properties:
|
||||
reg:
|
||||
const: 0x13
|
||||
|
@ -124,7 +128,9 @@ properties:
|
|||
- '#clock-cells'
|
||||
|
||||
protocol@14:
|
||||
type: object
|
||||
$ref: '#/$defs/protocol-node'
|
||||
unevaluatedProperties: false
|
||||
|
||||
properties:
|
||||
reg:
|
||||
const: 0x14
|
||||
|
@ -136,7 +142,9 @@ properties:
|
|||
- '#clock-cells'
|
||||
|
||||
protocol@15:
|
||||
type: object
|
||||
$ref: '#/$defs/protocol-node'
|
||||
unevaluatedProperties: false
|
||||
|
||||
properties:
|
||||
reg:
|
||||
const: 0x15
|
||||
|
@ -148,7 +156,9 @@ properties:
|
|||
- '#thermal-sensor-cells'
|
||||
|
||||
protocol@16:
|
||||
type: object
|
||||
$ref: '#/$defs/protocol-node'
|
||||
unevaluatedProperties: false
|
||||
|
||||
properties:
|
||||
reg:
|
||||
const: 0x16
|
||||
|
@ -160,20 +170,31 @@ properties:
|
|||
- '#reset-cells'
|
||||
|
||||
protocol@17:
|
||||
type: object
|
||||
$ref: '#/$defs/protocol-node'
|
||||
unevaluatedProperties: false
|
||||
|
||||
properties:
|
||||
reg:
|
||||
const: 0x17
|
||||
|
||||
regulators:
|
||||
type: object
|
||||
additionalProperties: false
|
||||
description:
|
||||
The list of all regulators provided by this SCMI controller.
|
||||
|
||||
properties:
|
||||
'#address-cells':
|
||||
const: 1
|
||||
|
||||
'#size-cells':
|
||||
const: 0
|
||||
|
||||
patternProperties:
|
||||
'^regulators@[0-9a-f]+$':
|
||||
'^regulator@[0-9a-f]+$':
|
||||
type: object
|
||||
$ref: "../regulator/regulator.yaml#"
|
||||
unevaluatedProperties: false
|
||||
|
||||
properties:
|
||||
reg:
|
||||
|
@ -184,15 +205,17 @@ properties:
|
|||
- reg
|
||||
|
||||
protocol@18:
|
||||
type: object
|
||||
$ref: '#/$defs/protocol-node'
|
||||
unevaluatedProperties: false
|
||||
|
||||
properties:
|
||||
reg:
|
||||
const: 0x18
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
patternProperties:
|
||||
'^protocol@[0-9a-f]+$':
|
||||
$defs:
|
||||
protocol-node:
|
||||
type: object
|
||||
description:
|
||||
Each sub-node represents a protocol supported. If the platform
|
||||
|
|
Loading…
Reference in a new issue