1

docs: dt: writing-schema: explain additional/unevaluatedProperties

Add to the list of schema contents expected keywords with their
explanation: additionalProperties and unevaluatedProperties.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20240212150524.81819-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
Krzysztof Kozlowski 2024-02-12 16:05:23 +01:00 committed by Rob Herring
parent ceecb37e49
commit d9a41dc4de

View File

@ -71,6 +71,26 @@ required
A list of DT properties from the 'properties' section that
must always be present.
additionalProperties / unevaluatedProperties
Keywords controlling how schema will validate properties not matched by this
schema's 'properties' or 'patternProperties'. Each schema is supposed to
have exactly one of these keywords in top-level part, so either
additionalProperties or unevaluatedProperties. Nested nodes, so properties
being objects, are supposed to have one as well.
* additionalProperties: false
Most common case, where no additional schema is referenced or if this
binding allows subset of properties from other referenced schemas.
* unevaluatedProperties: false
Used when this binding references other schema whose all properties
should be allowed.
* additionalProperties: true
Rare case, used for schemas implementing common set of properties. Such
schemas are supposed to be referenced by other schemas, which then use
'unevaluatedProperties: false'. Typically bus or common-part schemas.
examples
Optional. A list of one or more DTS hunks implementing the
binding. Note: YAML doesn't allow leading tabs, so spaces must be used instead.