Commit d9a41dc4 authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski Committed by Rob Herring
Browse files

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: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20240212150524.81819-2-krzysztof.kozlowski@linaro.org


Signed-off-by: default avatarRob Herring <robh@kernel.org>
parent ceecb37e
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -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.