xref: /freebsd/sys/contrib/device-tree/Bindings/regulator/act8865-regulator.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotACT88xx regulators
2*c66ec88fSEmmanuel Vadot-------------------
3*c66ec88fSEmmanuel Vadot
4*c66ec88fSEmmanuel VadotRequired properties:
5*c66ec88fSEmmanuel Vadot- compatible: "active-semi,act8846" or "active-semi,act8865" or "active-semi,act8600"
6*c66ec88fSEmmanuel Vadot- reg: I2C slave address
7*c66ec88fSEmmanuel Vadot
8*c66ec88fSEmmanuel VadotOptional properties:
9*c66ec88fSEmmanuel Vadot- system-power-controller: Telling whether or not this pmic is controlling
10*c66ec88fSEmmanuel Vadot  the system power. See Documentation/devicetree/bindings/power/power-controller.txt .
11*c66ec88fSEmmanuel Vadot- active-semi,vsel-high: Indicates the VSEL pin is high.
12*c66ec88fSEmmanuel Vadot  If this property is missing, assume the VSEL pin is low(0).
13*c66ec88fSEmmanuel Vadot
14*c66ec88fSEmmanuel VadotOptional input supply properties:
15*c66ec88fSEmmanuel Vadot- for act8600:
16*c66ec88fSEmmanuel Vadot  - vp1-supply: The input supply for DCDC_REG1
17*c66ec88fSEmmanuel Vadot  - vp2-supply: The input supply for DCDC_REG2
18*c66ec88fSEmmanuel Vadot  - vp3-supply: The input supply for DCDC_REG3
19*c66ec88fSEmmanuel Vadot  - inl-supply: The input supply for LDO_REG5, LDO_REG6, LDO_REG7 and LDO_REG8
20*c66ec88fSEmmanuel Vadot  SUDCDC_REG4, LDO_REG9 and LDO_REG10 do not have separate supplies.
21*c66ec88fSEmmanuel Vadot- for act8846:
22*c66ec88fSEmmanuel Vadot  - vp1-supply: The input supply for REG1
23*c66ec88fSEmmanuel Vadot  - vp2-supply: The input supply for REG2
24*c66ec88fSEmmanuel Vadot  - vp3-supply: The input supply for REG3
25*c66ec88fSEmmanuel Vadot  - vp4-supply: The input supply for REG4
26*c66ec88fSEmmanuel Vadot  - inl1-supply: The input supply for REG5, REG6 and REG7
27*c66ec88fSEmmanuel Vadot  - inl2-supply: The input supply for REG8 and LDO_REG9
28*c66ec88fSEmmanuel Vadot  - inl3-supply: The input supply for REG10, REG11 and REG12
29*c66ec88fSEmmanuel Vadot- for act8865:
30*c66ec88fSEmmanuel Vadot  - vp1-supply: The input supply for DCDC_REG1
31*c66ec88fSEmmanuel Vadot  - vp2-supply: The input supply for DCDC_REG2
32*c66ec88fSEmmanuel Vadot  - vp3-supply: The input supply for DCDC_REG3
33*c66ec88fSEmmanuel Vadot  - inl45-supply: The input supply for LDO_REG1 and LDO_REG2
34*c66ec88fSEmmanuel Vadot  - inl67-supply: The input supply for LDO_REG3 and LDO_REG4
35*c66ec88fSEmmanuel Vadot
36*c66ec88fSEmmanuel VadotAny standard regulator properties can be used to configure the single regulator.
37*c66ec88fSEmmanuel Vadotregulator-initial-mode, regulator-allowed-modes and regulator-mode could be specified
38*c66ec88fSEmmanuel Vadotfor act8865 using mode values from dt-bindings/regulator/active-semi,8865-regulator.h
39*c66ec88fSEmmanuel Vadotfile.
40*c66ec88fSEmmanuel Vadot
41*c66ec88fSEmmanuel VadotThe valid names for regulators are:
42*c66ec88fSEmmanuel Vadot	- for act8846:
43*c66ec88fSEmmanuel Vadot	REG1, REG2, REG3, REG4, REG5, REG6, REG7, REG8, REG9, REG10, REG11, REG12
44*c66ec88fSEmmanuel Vadot	- for act8865:
45*c66ec88fSEmmanuel Vadot	DCDC_REG1, DCDC_REG2, DCDC_REG3, LDO_REG1, LDO_REG2, LDO_REG3, LDO_REG4.
46*c66ec88fSEmmanuel Vadot	- for act8600:
47*c66ec88fSEmmanuel Vadot	DCDC_REG1, DCDC_REG2, DCDC_REG3, SUDCDC_REG4, LDO_REG5, LDO_REG6, LDO_REG7,
48*c66ec88fSEmmanuel Vadot	LDO_REG8, LDO_REG9, LDO_REG10,
49*c66ec88fSEmmanuel Vadot
50*c66ec88fSEmmanuel VadotExample:
51*c66ec88fSEmmanuel Vadot--------
52*c66ec88fSEmmanuel Vadot
53*c66ec88fSEmmanuel Vadot#include <dt-bindings/regulator/active-semi,8865-regulator.h>
54*c66ec88fSEmmanuel Vadot
55*c66ec88fSEmmanuel Vadot		i2c1: i2c@f0018000 {
56*c66ec88fSEmmanuel Vadot			pmic: act8865@5b {
57*c66ec88fSEmmanuel Vadot				compatible = "active-semi,act8865";
58*c66ec88fSEmmanuel Vadot				reg = <0x5b>;
59*c66ec88fSEmmanuel Vadot				active-semi,vsel-high;
60*c66ec88fSEmmanuel Vadot
61*c66ec88fSEmmanuel Vadot				regulators {
62*c66ec88fSEmmanuel Vadot					vcc_1v8_reg: DCDC_REG1 {
63*c66ec88fSEmmanuel Vadot						regulator-name = "VCC_1V8";
64*c66ec88fSEmmanuel Vadot						regulator-min-microvolt = <1800000>;
65*c66ec88fSEmmanuel Vadot						regulator-max-microvolt = <1800000>;
66*c66ec88fSEmmanuel Vadot						regulator-always-on;
67*c66ec88fSEmmanuel Vadot					};
68*c66ec88fSEmmanuel Vadot
69*c66ec88fSEmmanuel Vadot					vcc_1v2_reg: DCDC_REG2 {
70*c66ec88fSEmmanuel Vadot						regulator-name = "VCC_1V2";
71*c66ec88fSEmmanuel Vadot						regulator-min-microvolt = <1100000>;
72*c66ec88fSEmmanuel Vadot						regulator-max-microvolt = <1300000>;
73*c66ec88fSEmmanuel Vadot						regulator-always-on;
74*c66ec88fSEmmanuel Vadot
75*c66ec88fSEmmanuel Vadot						regulator-allowed-modes = <ACT8865_REGULATOR_MODE_FIXED>,
76*c66ec88fSEmmanuel Vadot									  <ACT8865_REGULATOR_MODE_LOWPOWER>;
77*c66ec88fSEmmanuel Vadot						regulator-initial-mode = <ACT8865_REGULATOR_MODE_FIXED>;
78*c66ec88fSEmmanuel Vadot
79*c66ec88fSEmmanuel Vadot						regulator-state-mem {
80*c66ec88fSEmmanuel Vadot							regulator-on-in-suspend;
81*c66ec88fSEmmanuel Vadot							regulator-suspend-min-microvolt = <1150000>;
82*c66ec88fSEmmanuel Vadot							regulator-suspend-max-microvolt = <1150000>;
83*c66ec88fSEmmanuel Vadot							regulator-changeable-in-suspend;
84*c66ec88fSEmmanuel Vadot							regulator-mode = <ACT8865_REGULATOR_MODE_LOWPOWER>;
85*c66ec88fSEmmanuel Vadot						};
86*c66ec88fSEmmanuel Vadot					};
87*c66ec88fSEmmanuel Vadot
88*c66ec88fSEmmanuel Vadot					vcc_3v3_reg: DCDC_REG3 {
89*c66ec88fSEmmanuel Vadot						regulator-name = "VCC_3V3";
90*c66ec88fSEmmanuel Vadot						regulator-min-microvolt = <3300000>;
91*c66ec88fSEmmanuel Vadot						regulator-max-microvolt = <3300000>;
92*c66ec88fSEmmanuel Vadot						regulator-always-on;
93*c66ec88fSEmmanuel Vadot					};
94*c66ec88fSEmmanuel Vadot
95*c66ec88fSEmmanuel Vadot					vddana_reg: LDO_REG1 {
96*c66ec88fSEmmanuel Vadot						regulator-name = "VDDANA";
97*c66ec88fSEmmanuel Vadot						regulator-min-microvolt = <3300000>;
98*c66ec88fSEmmanuel Vadot						regulator-max-microvolt = <3300000>;
99*c66ec88fSEmmanuel Vadot						regulator-always-on;
100*c66ec88fSEmmanuel Vadot
101*c66ec88fSEmmanuel Vadot						regulator-allowed-modes = <ACT8865_REGULATOR_MODE_NORMAL>,
102*c66ec88fSEmmanuel Vadot									  <ACT8865_REGULATOR_MODE_LOWPOWER>;
103*c66ec88fSEmmanuel Vadot						regulator-initial-mode = <ACT8865_REGULATOR_MODE_NORMAL>;
104*c66ec88fSEmmanuel Vadot
105*c66ec88fSEmmanuel Vadot						regulator-state-mem {
106*c66ec88fSEmmanuel Vadot							regulator-off-in-suspend;
107*c66ec88fSEmmanuel Vadot						};
108*c66ec88fSEmmanuel Vadot					};
109*c66ec88fSEmmanuel Vadot
110*c66ec88fSEmmanuel Vadot					vddfuse_reg: LDO_REG2 {
111*c66ec88fSEmmanuel Vadot						regulator-name = "FUSE_2V5";
112*c66ec88fSEmmanuel Vadot						regulator-min-microvolt = <2500000>;
113*c66ec88fSEmmanuel Vadot						regulator-max-microvolt = <2500000>;
114*c66ec88fSEmmanuel Vadot					};
115*c66ec88fSEmmanuel Vadot				};
116*c66ec88fSEmmanuel Vadot			};
117*c66ec88fSEmmanuel Vadot		};
118