xref: /freebsd/sys/contrib/device-tree/Bindings/power/apple,pmgr-pwrstate.yaml (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
1e67e8565SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2e67e8565SEmmanuel Vadot%YAML 1.2
3e67e8565SEmmanuel Vadot---
4e67e8565SEmmanuel Vadot$id: http://devicetree.org/schemas/power/apple,pmgr-pwrstate.yaml#
5e67e8565SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6e67e8565SEmmanuel Vadot
7e67e8565SEmmanuel Vadottitle: Apple SoC PMGR Power States
8e67e8565SEmmanuel Vadot
9e67e8565SEmmanuel Vadotmaintainers:
10e67e8565SEmmanuel Vadot  - Hector Martin <marcan@marcan.st>
11e67e8565SEmmanuel Vadot
12e67e8565SEmmanuel VadotallOf:
13b97ee269SEmmanuel Vadot  - $ref: power-domain.yaml#
14e67e8565SEmmanuel Vadot
15e67e8565SEmmanuel Vadotdescription: |
16e67e8565SEmmanuel Vadot  Apple SoCs include PMGR blocks responsible for power management,
17e67e8565SEmmanuel Vadot  which can control various clocks, resets, power states, and
18e67e8565SEmmanuel Vadot  performance features. This binding describes the device power
19e67e8565SEmmanuel Vadot  state registers, which control power states and resets.
20e67e8565SEmmanuel Vadot
21e67e8565SEmmanuel Vadot  Each instance of a power controller within the PMGR syscon node
22e67e8565SEmmanuel Vadot  represents a generic power domain provider, as documented in
23e67e8565SEmmanuel Vadot  Documentation/devicetree/bindings/power/power-domain.yaml.
24e67e8565SEmmanuel Vadot  The provider controls a single SoC block. The power hierarchy is
25e67e8565SEmmanuel Vadot  represented via power-domains relationships between these nodes.
26e67e8565SEmmanuel Vadot
27e67e8565SEmmanuel Vadot  See Documentation/devicetree/bindings/arm/apple/apple,pmgr.yaml
28e67e8565SEmmanuel Vadot  for the top-level PMGR node documentation.
29e67e8565SEmmanuel Vadot
30e67e8565SEmmanuel Vadotproperties:
31e67e8565SEmmanuel Vadot  compatible:
32e67e8565SEmmanuel Vadot    items:
33e67e8565SEmmanuel Vadot      - enum:
34e67e8565SEmmanuel Vadot          - apple,t8103-pmgr-pwrstate
35*fac71e4eSEmmanuel Vadot          - apple,t8112-pmgr-pwrstate
36e67e8565SEmmanuel Vadot          - apple,t6000-pmgr-pwrstate
37e67e8565SEmmanuel Vadot      - const: apple,pmgr-pwrstate
38e67e8565SEmmanuel Vadot
39e67e8565SEmmanuel Vadot  reg:
40e67e8565SEmmanuel Vadot    maxItems: 1
41e67e8565SEmmanuel Vadot
42e67e8565SEmmanuel Vadot  "#power-domain-cells":
43e67e8565SEmmanuel Vadot    const: 0
44e67e8565SEmmanuel Vadot
45e67e8565SEmmanuel Vadot  "#reset-cells":
46e67e8565SEmmanuel Vadot    const: 0
47e67e8565SEmmanuel Vadot
48e67e8565SEmmanuel Vadot  power-domains:
49e67e8565SEmmanuel Vadot    description:
50e67e8565SEmmanuel Vadot      Reference to parent power domains. A domain may have multiple parents,
51e67e8565SEmmanuel Vadot      and all will be powered up when it is powered.
52e67e8565SEmmanuel Vadot    minItems: 1
53e67e8565SEmmanuel Vadot    maxItems: 8 # Arbitrary, should be enough
54e67e8565SEmmanuel Vadot
55e67e8565SEmmanuel Vadot  label:
56e67e8565SEmmanuel Vadot    description:
57e67e8565SEmmanuel Vadot      Specifies the name of the SoC domain being controlled. This is used to
58e67e8565SEmmanuel Vadot      name the power/reset domains.
59e67e8565SEmmanuel Vadot
60e67e8565SEmmanuel Vadot  apple,always-on:
61e67e8565SEmmanuel Vadot    description:
62e67e8565SEmmanuel Vadot      Forces this power domain to always be powered up.
63e67e8565SEmmanuel Vadot    type: boolean
64e67e8565SEmmanuel Vadot
65e67e8565SEmmanuel Vadot  apple,min-state:
66e67e8565SEmmanuel Vadot    description:
67e67e8565SEmmanuel Vadot      Specifies the minimum power state for auto-PM.
68e67e8565SEmmanuel Vadot      0 = power gated, 4 = clock gated, 15 = on.
69e67e8565SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
70e67e8565SEmmanuel Vadot    minimum: 0
71e67e8565SEmmanuel Vadot    maximum: 15
72e67e8565SEmmanuel Vadot
73e67e8565SEmmanuel Vadotrequired:
74e67e8565SEmmanuel Vadot  - compatible
75e67e8565SEmmanuel Vadot  - reg
76e67e8565SEmmanuel Vadot  - "#power-domain-cells"
77e67e8565SEmmanuel Vadot  - "#reset-cells"
78e67e8565SEmmanuel Vadot  - label
79e67e8565SEmmanuel Vadot
80e67e8565SEmmanuel VadotadditionalProperties: false
81