1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/power/domain-idle-state.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: PM Domain Idle States binding description
8
9maintainers:
10  - Ulf Hansson <ulf.hansson@linaro.org>
11
12description:
13  A domain idle state node represents the state parameters that will be used to
14  select the state when there are no active components in the PM domain.
15
16properties:
17  $nodename:
18    const: domain-idle-states
19
20patternProperties:
21  "^(cpu|cluster|domain)-":
22    type: object
23    additionalProperties: false
24    description:
25      Each state node represents a domain idle state description.
26
27    properties:
28      compatible:
29        const: domain-idle-state
30
31      entry-latency-us:
32        description:
33          The worst case latency in microseconds required to enter the idle
34          state. Note that, the exit-latency-us duration may be guaranteed only
35          after the entry-latency-us has passed.
36
37      exit-latency-us:
38        description:
39          The worst case latency in microseconds required to exit the idle
40          state.
41
42      min-residency-us:
43        description:
44          The minimum residency duration in microseconds after which the idle
45          state will yield power benefits, after overcoming the overhead while
46          entering the idle state.
47
48      arm,psci-suspend-param:
49        $ref: /schemas/types.yaml#/definitions/uint32
50        description: |
51          power_state parameter to pass to the ARM PSCI suspend call.
52
53          Device tree nodes that require usage of PSCI CPU_SUSPEND function
54          (i.e. idle states node with entry-method property is set to "psci")
55          must specify this property.
56
57    required:
58      - compatible
59      - entry-latency-us
60      - exit-latency-us
61      - min-residency-us
62
63additionalProperties: false
64
65examples:
66  - |
67
68    domain-idle-states {
69      domain_retention: domain-retention {
70        compatible = "domain-idle-state";
71        entry-latency-us = <20>;
72        exit-latency-us = <40>;
73        min-residency-us = <80>;
74      };
75    };
76...
77