Commit b18c56a6 authored by Rob Herring's avatar Rob Herring
Browse files

dt-bindings: arm: psci: Relax and simplify compatible constraints



Even PSCI v1.0 compliant implementations may support v0.1 clients
(i.e. "arm,psci"). Relax the compatible schema such that an
implementation can claim 1.0, 0.2, and 0.1 compatibility.

In the process, the schema can be simplified a bit by using 'minItems'
instead of separate 'oneOf' entries.

Signed-off-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220803201639.2552581-1-robh@kernel.org
parent 568035b0
Loading
Loading
Loading
Loading
+3 −8
Original line number Diff line number Diff line
@@ -41,31 +41,26 @@ properties:
          For implementations complying to PSCI versions prior to 0.2.
        const: arm,psci

      - description:
          For implementations complying to PSCI 0.2.
        const: arm,psci-0.2

      - description:
          For implementations complying to PSCI 0.2.
          Function IDs are not required and should be ignored by an OS with
          PSCI 0.2 support, but are permitted to be present for compatibility
          with existing software when "arm,psci" is later in the compatible
          list.
        minItems: 1
        items:
          - const: arm,psci-0.2
          - const: arm,psci

      - description:
          For implementations complying to PSCI 1.0.
        const: arm,psci-1.0

      - description:
          For implementations complying to PSCI 1.0.
          PSCI 1.0 is backward compatible with PSCI 0.2 with minor
          specification updates, as defined in the PSCI specification[2].
        minItems: 1
        items:
          - const: arm,psci-1.0
          - const: arm,psci-0.2
          - const: arm,psci

  method:
    description: The method of calling the PSCI firmware.