xref: /freebsd/sys/contrib/device-tree/Bindings/regulator/act8945a-regulator.txt (revision d9a42747950146bf03cda7f6e25d219253f8a57a)
1Device-Tree bindings for regulators of Active-semi ACT8945A Multi-Function Device
2
3Required properties:
4 - compatible: "active-semi,act8945a", please refer to ../mfd/act8945a.txt.
5
6Optional properties:
7- active-semi,vsel-high: Indicates if the VSEL pin is set to logic-high.
8  If this property is missing, assume the VSEL pin is set to logic-low.
9
10Optional input supply properties:
11  - vp1-supply: The input supply for REG_DCDC1
12  - vp2-supply: The input supply for REG_DCDC2
13  - vp3-supply: The input supply for REG_DCDC3
14  - inl45-supply: The input supply for REG_LDO1 and REG_LDO2
15  - inl67-supply: The input supply for REG_LDO3 and REG_LDO4
16
17Any standard regulator properties can be used to configure the single regulator.
18regulator-initial-mode, regulator-allowed-modes and regulator-mode could be
19specified using mode values from dt-bindings/regulator/active-semi,8945a-regulator.h
20file.
21
22The valid names for regulators are:
23	REG_DCDC1, REG_DCDC2, REG_DCDC3, REG_LDO1, REG_LDO2, REG_LDO3, REG_LDO4.
24
25Example:
26
27#include <dt-bindings/regulator/active-semi,8945a-regulator.h>
28
29	pmic@5b {
30		compatible = "active-semi,act8945a";
31		reg = <0x5b>;
32
33		active-semi,vsel-high;
34
35		regulators {
36			vdd_1v35_reg: REG_DCDC1 {
37				regulator-name = "VDD_1V35";
38				regulator-min-microvolt = <1350000>;
39				regulator-max-microvolt = <1350000>;
40				regulator-always-on;
41
42				regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_FIXED>,
43							  <ACT8945A_REGULATOR_MODE_LOWPOWER>;
44				regulator-initial-mode = <ACT8945A_REGULATOR_MODE_FIXED>;
45
46				regulator-state-mem {
47					regulator-on-in-suspend;
48					regulator-suspend-min-microvolt=<1400000>;
49					regulator-suspend-max-microvolt=<1400000>;
50					regulator-changeable-in-suspend;
51					regulator-mode=<ACT8945A_REGULATOR_MODE_LOWPOWER>;
52				};
53			};
54
55			vdd_1v2_reg: REG_DCDC2 {
56				regulator-name = "VDD_1V2";
57				regulator-min-microvolt = <1100000>;
58				regulator-max-microvolt = <1300000>;
59				regulator-always-on;
60
61				regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_FIXED>,
62							  <ACT8945A_REGULATOR_MODE_LOWPOWER>;
63				regulator-initial-mode = <ACT8945A_REGULATOR_MODE_FIXED>;
64
65				regulator-state-mem {
66					regulator-off-in-suspend;
67				};
68			};
69
70			vdd_3v3_reg: REG_DCDC3 {
71				regulator-name = "VDD_3V3";
72				regulator-min-microvolt = <3300000>;
73				regulator-max-microvolt = <3300000>;
74				regulator-always-on;
75			};
76
77			vdd_fuse_reg: REG_LDO1 {
78				regulator-name = "VDD_FUSE";
79				regulator-min-microvolt = <2500000>;
80				regulator-max-microvolt = <2500000>;
81				regulator-always-on;
82
83				regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_NORMAL>,
84							  <ACT8945A_REGULATOR_MODE_LOWPOWER>;
85				regulator-initial-mode = <ACT8945A_REGULATOR_MODE_NORMAL>;
86
87				regulator-state-mem {
88					regulator-off-in-suspend;
89				};
90			};
91
92			vdd_3v3_lp_reg: REG_LDO2 {
93				regulator-name = "VDD_3V3_LP";
94				regulator-min-microvolt = <3300000>;
95				regulator-max-microvolt = <3300000>;
96				regulator-always-on;
97			};
98
99			vdd_led_reg: REG_LDO3 {
100				regulator-name = "VDD_LED";
101				regulator-min-microvolt = <3300000>;
102				regulator-max-microvolt = <3300000>;
103				regulator-always-on;
104			};
105
106			vdd_sdhc_1v8_reg: REG_LDO4 {
107				regulator-name = "VDD_SDHC_1V8";
108				regulator-min-microvolt = <1800000>;
109				regulator-max-microvolt = <1800000>;
110				regulator-always-on;
111			};
112		};
113	};
114