1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/active-semi,act8846.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Active-semi ACT8846 regulator
8
9maintainers:
10  - Paul Cercueil <paul@crapouillou.net>
11
12properties:
13  compatible:
14    const: active-semi,act8846
15
16  reg:
17    maxItems: 1
18
19  system-power-controller:
20    description:
21      Indicates that the ACT8846 is responsible for powering OFF
22      the system.
23    type: boolean
24
25  active-semi,vsel-high:
26    description:
27      Indicates the VSEL pin is high. If this property is missing,
28      the VSEL pin is assumed to be low.
29    type: boolean
30
31  regulators:
32    type: object
33    additionalProperties: false
34
35    properties:
36      REG1:
37        type: object
38        $ref: /schemas/regulator/regulator.yaml#
39        unevaluatedProperties: false
40
41        properties:
42          vp1-supply:
43            description: Handle to the VP1 input supply
44
45      REG2:
46        type: object
47        $ref: /schemas/regulator/regulator.yaml#
48        unevaluatedProperties: false
49
50        properties:
51          vp2-supply:
52            description: Handle to the VP2 input supply
53
54      REG3:
55        type: object
56        $ref: /schemas/regulator/regulator.yaml#
57        unevaluatedProperties: false
58
59        properties:
60          vp3-supply:
61            description: Handle to the VP3 input supply
62
63      REG4:
64        type: object
65        $ref: /schemas/regulator/regulator.yaml#
66        unevaluatedProperties: false
67
68        properties:
69          vp4-supply:
70            description: Handle to the VP4 input supply
71
72    patternProperties:
73      "^REG[5-7]$":
74        type: object
75        $ref: /schemas/regulator/regulator.yaml#
76        unevaluatedProperties: false
77
78        properties:
79          inl1-supply:
80            description: Handle to the INL1 input supply
81
82      "^REG[8-9]$":
83        type: object
84        $ref: /schemas/regulator/regulator.yaml#
85        unevaluatedProperties: false
86
87        properties:
88          inl2-supply:
89            description: Handle to the INL2 input supply
90
91      "^REG1[0-2]$":
92        type: object
93        $ref: /schemas/regulator/regulator.yaml#
94        unevaluatedProperties: false
95
96        properties:
97          inl3-supply:
98            description: Handle to the INL3 input supply
99
100additionalProperties: false
101
102required:
103  - reg
104  - compatible
105  - regulators
106
107examples:
108  - |
109    i2c {
110      #address-cells = <1>;
111      #size-cells = <0>;
112
113      pmic@5a {
114        compatible = "active-semi,act8846";
115        reg = <0x5a>;
116
117        system-power-controller;
118
119        regulators {
120          REG1 {
121            regulator-name = "VCC_DDR";
122            regulator-min-microvolt = <1200000>;
123            regulator-max-microvolt = <1200000>;
124            regulator-always-on;
125          };
126
127          REG2 {
128            regulator-name = "VCC_IO";
129            regulator-min-microvolt = <3300000>;
130            regulator-max-microvolt = <3300000>;
131            regulator-always-on;
132          };
133
134          REG3 {
135            regulator-name = "VDD_LOG";
136            regulator-min-microvolt = <1000000>;
137            regulator-max-microvolt = <1000000>;
138            regulator-always-on;
139          };
140
141          REG4 {
142            regulator-name = "VCC_20";
143            regulator-min-microvolt = <2000000>;
144            regulator-max-microvolt = <2000000>;
145            regulator-always-on;
146          };
147
148          REG5 {
149            regulator-name = "VCCIO_SD";
150            regulator-min-microvolt = <3300000>;
151            regulator-max-microvolt = <3300000>;
152            regulator-always-on;
153          };
154
155          REG6 {
156            regulator-name = "VDD10_LCD";
157            regulator-min-microvolt = <1000000>;
158            regulator-max-microvolt = <1000000>;
159            regulator-always-on;
160          };
161
162          REG7 {
163            regulator-name = "VCC_WL";
164            regulator-min-microvolt = <3300000>;
165            regulator-max-microvolt = <3300000>;
166            regulator-always-on;
167          };
168
169          REG8 {
170            regulator-name = "VCCA_33";
171            regulator-min-microvolt = <3300000>;
172            regulator-max-microvolt = <3300000>;
173            regulator-always-on;
174          };
175
176          REG9 {
177            regulator-name = "VCC_LAN";
178            regulator-min-microvolt = <3300000>;
179            regulator-max-microvolt = <3300000>;
180            regulator-always-on;
181          };
182
183          REG10 {
184            regulator-name = "VDD_10";
185            regulator-min-microvolt = <1000000>;
186            regulator-max-microvolt = <1000000>;
187            regulator-always-on;
188          };
189
190          REG11 {
191            regulator-name = "VCC_18";
192            regulator-min-microvolt = <1800000>;
193            regulator-max-microvolt = <1800000>;
194            regulator-always-on;
195          };
196
197          REG12 {
198            regulator-name = "VCC18_LCD";
199            regulator-min-microvolt = <1800000>;
200            regulator-max-microvolt = <1800000>;
201            regulator-always-on;
202          };
203        };
204      };
205    };
206