^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) %YAML 1.2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) ---
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) $id: http://devicetree.org/schemas/power/domain-idle-state.yaml#
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) $schema: http://devicetree.org/meta-schemas/core.yaml#
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) title: PM Domain Idle States binding description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) maintainers:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) - Ulf Hansson <ulf.hansson@linaro.org>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) description:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) A domain idle state node represents the state parameters that will be used to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) select the state when there are no active components in the PM domain.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) $nodename:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) const: domain-idle-states
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) patternProperties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) "^(cpu|cluster|domain)-":
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) type: object
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) description:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) Each state node represents a domain idle state description.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) compatible:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) const: domain-idle-state
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) entry-latency-us:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) description:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) The worst case latency in microseconds required to enter the idle
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) state. Note that, the exit-latency-us duration may be guaranteed only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) after the entry-latency-us has passed.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) exit-latency-us:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) description:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) The worst case latency in microseconds required to exit the idle
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) state.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) min-residency-us:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) description:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) The minimum residency duration in microseconds after which the idle
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) state will yield power benefits, after overcoming the overhead while
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) entering the idle state.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) required:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) - compatible
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) - entry-latency-us
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) - exit-latency-us
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) - min-residency-us
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) additionalProperties: false
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) examples:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) - |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) domain-idle-states {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) domain_retention: domain-retention {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) compatible = "domain-idle-state";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) entry-latency-us = <20>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) exit-latency-us = <40>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) min-residency-us = <80>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) ...