1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
4 $id: http://devicetree.org/schemas/mfd/samsung,s5m8767.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Samsung S5M8767 Power Management IC
10 - Krzysztof Kozlowski <krzk@kernel.org>
13 This is a part of device tree bindings for S2M and S5M family of Power
16 The Samsung S5M8767 is a Power Management IC which includes voltage
17 and current regulators, RTC, clock outputs and other sub-blocks.
21 const: samsung,s5m8767-pmic
24 $ref: ../clock/samsung,s2mps11.yaml
26 Child node describing clock provider.
35 $ref: ../regulator/samsung,s5m8767.yaml
37 List of child nodes that specify the regulators.
39 s5m8767,pmic-buck2-dvs-voltage:
40 $ref: /schemas/types.yaml#/definitions/uint32-array
44 A set of 8 voltage values in micro-volt (uV) units for buck2 when
45 changing voltage using gpio dvs.
47 s5m8767,pmic-buck3-dvs-voltage:
48 $ref: /schemas/types.yaml#/definitions/uint32-array
52 A set of 8 voltage values in micro-volt (uV) units for buck3 when
53 changing voltage using gpio dvs.
55 s5m8767,pmic-buck4-dvs-voltage:
56 $ref: /schemas/types.yaml#/definitions/uint32-array
60 A set of 8 voltage values in micro-volt (uV) units for buck4 when
61 changing voltage using gpio dvs.
63 s5m8767,pmic-buck-ds-gpios:
67 GPIO specifiers for three host gpio's used for selecting GPIO DVS lines.
68 It is one-to-one mapped to dvs gpio lines.
70 s5m8767,pmic-buck2-uses-gpio-dvs:
72 description: buck2 can be controlled by gpio dvs.
74 s5m8767,pmic-buck3-uses-gpio-dvs:
76 description: buck3 can be controlled by gpio dvs.
78 s5m8767,pmic-buck4-uses-gpio-dvs:
80 description: buck4 can be controlled by gpio dvs.
82 s5m8767,pmic-buck-default-dvs-idx:
83 $ref: /schemas/types.yaml#/definitions/uint32-array
88 Default voltage setting selected from the possible 8 options selectable
89 by the dvs gpios. The value of this property should be between 0 and 7.
90 If not specified or if out of range, the default value of this property
93 s5m8767,pmic-buck-dvs-gpios:
97 GPIO specifiers for three host gpio's used for dvs.
100 description: Power supply for buck1
102 description: Power supply for buck2
104 description: Power supply for buck3
106 description: Power supply for buck4
108 description: Power supply for buck5
110 description: Power supply for buck6
112 description: Power supply for buck7
114 description: Power supply for buck8
116 description: Power supply for buck9
119 description: Power supply for LDO3, LDO10, LDO26, LDO27
121 description: Power supply for LDO13, LDO16, LDO25, LDO28
123 description: Power supply for LDO11, LDO14
125 description: Power supply for LDO4, LDO9
127 description: Power supply for LDO12, LDO17, LDO19, LDO23
129 description: Power supply for LDO18, LDO20, LDO21, LDO24
131 description: Power supply for LDO5, LDO22
133 description: Power supply for LDO1, LDO6, LDO7, LDO8, LDO15
135 description: Power supply for LDO2
143 - s5m8767,pmic-buck-ds-gpios
146 s5m8767,pmic-buck2-dvs-voltage: [ 's5m8767,pmic-buck-dvs-gpios' ]
147 s5m8767,pmic-buck3-dvs-voltage: [ 's5m8767,pmic-buck-dvs-gpios' ]
148 s5m8767,pmic-buck4-dvs-voltage: [ 's5m8767,pmic-buck-dvs-gpios' ]
149 s5m8767,pmic-buck2-uses-gpio-dvs: [ 's5m8767,pmic-buck-dvs-gpios', 's5m8767,pmic-buck2-dvs-voltage' ]
150 s5m8767,pmic-buck3-uses-gpio-dvs: [ 's5m8767,pmic-buck-dvs-gpios', 's5m8767,pmic-buck3-dvs-voltage' ]
151 s5m8767,pmic-buck4-uses-gpio-dvs: [ 's5m8767,pmic-buck-dvs-gpios', 's5m8767,pmic-buck4-dvs-voltage' ]
153 additionalProperties: false
158 - s5m8767,pmic-buck2-uses-gpio-dvs
161 s5m8767,pmic-buck3-uses-gpio-dvs: false
162 s5m8767,pmic-buck4-uses-gpio-dvs: false
166 - s5m8767,pmic-buck3-uses-gpio-dvs
169 s5m8767,pmic-buck2-uses-gpio-dvs: false
170 s5m8767,pmic-buck4-uses-gpio-dvs: false
174 - s5m8767,pmic-buck4-uses-gpio-dvs
177 s5m8767,pmic-buck2-uses-gpio-dvs: false
178 s5m8767,pmic-buck3-uses-gpio-dvs: false
182 #include <dt-bindings/gpio/gpio.h>
183 #include <dt-bindings/interrupt-controller/irq.h>
186 #address-cells = <1>;
190 compatible = "samsung,s5m8767-pmic";
193 interrupt-parent = <&gpx3>;
194 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
195 pinctrl-names = "default";
196 pinctrl-0 = <&s5m8767_irq &s5m8767_dvs &s5m8767_ds>;
199 s5m8767,pmic-buck-default-dvs-idx = <3>;
200 s5m8767,pmic-buck2-uses-gpio-dvs;
202 s5m8767,pmic-buck-dvs-gpios = <&gpd1 0 GPIO_ACTIVE_LOW>,
203 <&gpd1 1 GPIO_ACTIVE_LOW>,
204 <&gpd1 2 GPIO_ACTIVE_LOW>;
206 s5m8767,pmic-buck-ds-gpios = <&gpx2 3 GPIO_ACTIVE_LOW>,
207 <&gpx2 4 GPIO_ACTIVE_LOW>,
208 <&gpx2 5 GPIO_ACTIVE_LOW>;
210 s5m8767,pmic-buck2-dvs-voltage = <1350000>, <1300000>,
211 <1250000>, <1200000>,
212 <1150000>, <1100000>,
215 s5m8767,pmic-buck3-dvs-voltage = <1100000>, <1100000>,
216 <1100000>, <1100000>,
217 <1000000>, <1000000>,
218 <1000000>, <1000000>;
220 s5m8767,pmic-buck4-dvs-voltage = <1200000>, <1200000>,
221 <1200000>, <1200000>,
222 <1200000>, <1200000>,
223 <1200000>, <1200000>;
226 compatible = "samsung,s5m8767-clk";
228 clock-output-names = "en32khz_ap", "en32khz_cp", "en32khz_bt";
233 regulator-name = "VDD_ALIVE";
234 regulator-min-microvolt = <1100000>;
235 regulator-max-microvolt = <1100000>;
238 op_mode = <1>; /* Normal Mode */
244 regulator-name = "VDD_MIF";
245 regulator-min-microvolt = <950000>;
246 regulator-max-microvolt = <1100000>;
249 op_mode = <1>; /* Normal Mode */
253 regulator-name = "VDD_ARM";
254 regulator-min-microvolt = <900000>;
255 regulator-max-microvolt = <1350000>;
258 op_mode = <1>; /* Normal Mode */
267 #include <dt-bindings/gpio/gpio.h>
268 #include <dt-bindings/interrupt-controller/irq.h>
271 #address-cells = <1>;
275 compatible = "samsung,s5m8767-pmic";
278 interrupt-parent = <&gpx3>;
279 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
280 pinctrl-names = "default";
281 pinctrl-0 = <&s5m8767_irq &s5m8767_dvs &s5m8767_ds>;
284 s5m8767,pmic-buck-ds-gpios = <&gpx2 3 GPIO_ACTIVE_LOW>,
285 <&gpx2 4 GPIO_ACTIVE_LOW>,
286 <&gpx2 5 GPIO_ACTIVE_LOW>;
289 compatible = "samsung,s5m8767-clk";
291 clock-output-names = "en32khz_ap", "en32khz_cp", "en32khz_bt";
296 regulator-name = "VDD_ALIVE";
297 regulator-min-microvolt = <1100000>;
298 regulator-max-microvolt = <1100000>;
301 op_mode = <1>; /* Normal Mode */