Commit | Line | Data |
---|---|---|
768a87c8 | 1 | AXP family PMIC device tree bindings |
cf1d5439 CC |
2 | |
3 | The axp20x family current members : | |
13e72a49 | 4 | axp152 (X-Powers) |
cf1d5439 CC |
5 | axp202 (X-Powers) |
6 | axp209 (X-Powers) | |
768a87c8 | 7 | axp221 (X-Powers) |
6f89fa9e | 8 | axp223 (X-Powers) |
bd425113 | 9 | axp809 (X-Powers) |
cf1d5439 CC |
10 | |
11 | Required properties: | |
13e72a49 | 12 | - compatible: "x-powers,axp152", "x-powers,axp202", "x-powers,axp209", |
f7b12b26 CYT |
13 | "x-powers,axp221", "x-powers,axp223", "x-powers,axp806", |
14 | "x-powers,axp809" | |
6f89fa9e | 15 | - reg: The I2C slave address or RSB hardware address for the AXP chip |
cf1d5439 CC |
16 | - interrupt-parent: The parent interrupt controller |
17 | - interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin | |
768a87c8 | 18 | - interrupt-controller: The PMIC has its own internal IRQs |
cf1d5439 CC |
19 | - #interrupt-cells: Should be set to 1 |
20 | ||
21 | Optional properties: | |
22 | - x-powers,dcdc-freq: defines the work frequency of DC-DC in KHz | |
bd425113 CYT |
23 | AXP152/20X: range: 750-1875, Default: 1.5 MHz |
24 | AXP22X/80X: range: 1800-4050, Default: 3 MHz | |
25 | ||
636e2a39 HG |
26 | - x-powers,drive-vbus-en: axp221 / axp223 only boolean, set this when the |
27 | N_VBUSEN pin is used as an output pin to control an external | |
28 | regulator to drive the OTG VBus, rather then as an input pin | |
29 | which signals whether the board is driving OTG VBus or not. | |
30 | ||
cf1d5439 CC |
31 | - <input>-supply: a phandle to the regulator supply node. May be omitted if |
32 | inputs are unregulated, such as using the IPSOUT output | |
33 | from the PMIC. | |
34 | ||
35 | - regulators: A node that houses a sub-node for each regulator. Regulators | |
36 | not used but preferred to be managed by the OS should be | |
37 | listed as well. | |
38 | See Documentation/devicetree/bindings/regulator/regulator.txt | |
39 | for more information on standard regulator bindings. | |
40 | ||
41 | Optional properties for DCDC regulators: | |
42 | - x-powers,dcdc-workmode: 1 for PWM mode, 0 for AUTO (PWM/PFM) mode | |
43 | Default: Current hardware setting | |
44 | The DCDC regulators work in a mixed PWM/PFM mode, | |
45 | using PFM under light loads and switching to PWM | |
46 | for heavier loads. Forcing PWM mode trades efficiency | |
47 | under light loads for lower output noise. This | |
48 | probably makes sense for HiFi audio related | |
49 | applications that aren't battery constrained. | |
50 | ||
cf1d5439 CC |
51 | AXP202/AXP209 regulators, type, and corresponding input supply names: |
52 | ||
53 | Regulator Type Supply Name Notes | |
54 | --------- ---- ----------- ----- | |
55 | DCDC2 : DC-DC buck : vin2-supply | |
56 | DCDC3 : DC-DC buck : vin3-supply | |
57 | LDO1 : LDO : acin-supply : always on | |
58 | LDO2 : LDO : ldo24in-supply : shared supply | |
59 | LDO3 : LDO : ldo3in-supply | |
60 | LDO4 : LDO : ldo24in-supply : shared supply | |
61 | LDO5 : LDO : ldo5in-supply | |
62 | ||
6f89fa9e | 63 | AXP221/AXP223 regulators, type, and corresponding input supply names: |
97ba5ac1 CYT |
64 | |
65 | Regulator Type Supply Name Notes | |
66 | --------- ---- ----------- ----- | |
67 | DCDC1 : DC-DC buck : vin1-supply | |
68 | DCDC2 : DC-DC buck : vin2-supply | |
69 | DCDC3 : DC-DC buck : vin3-supply | |
70 | DCDC4 : DC-DC buck : vin4-supply | |
71 | DCDC5 : DC-DC buck : vin5-supply | |
8a29f6c3 CYT |
72 | DC1SW : On/Off Switch : : DCDC1 secondary output |
73 | DC5LDO : LDO : : input from DCDC5 | |
97ba5ac1 CYT |
74 | ALDO1 : LDO : aldoin-supply : shared supply |
75 | ALDO2 : LDO : aldoin-supply : shared supply | |
76 | ALDO3 : LDO : aldoin-supply : shared supply | |
77 | DLDO1 : LDO : dldoin-supply : shared supply | |
78 | DLDO2 : LDO : dldoin-supply : shared supply | |
79 | DLDO3 : LDO : dldoin-supply : shared supply | |
80 | DLDO4 : LDO : dldoin-supply : shared supply | |
81 | ELDO1 : LDO : eldoin-supply : shared supply | |
82 | ELDO2 : LDO : eldoin-supply : shared supply | |
83 | ELDO3 : LDO : eldoin-supply : shared supply | |
84 | LDO_IO0 : LDO : ips-supply : GPIO 0 | |
85 | LDO_IO1 : LDO : ips-supply : GPIO 1 | |
86 | RTC_LDO : LDO : ips-supply : always on | |
636e2a39 | 87 | DRIVEVBUS : Enable output : drivevbus-supply : external regulator |
97ba5ac1 | 88 | |
f7b12b26 CYT |
89 | AXP806 regulators, type, and corresponding input supply names: |
90 | ||
91 | Regulator Type Supply Name Notes | |
92 | --------- ---- ----------- ----- | |
93 | DCDCA : DC-DC buck : vina-supply : poly-phase capable | |
94 | DCDCB : DC-DC buck : vinb-supply : poly-phase capable | |
95 | DCDCC : DC-DC buck : vinc-supply : poly-phase capable | |
96 | DCDCD : DC-DC buck : vind-supply : poly-phase capable | |
97 | DCDCE : DC-DC buck : vine-supply : poly-phase capable | |
98 | ALDO1 : LDO : aldoin-supply : shared supply | |
99 | ALDO2 : LDO : aldoin-supply : shared supply | |
100 | ALDO3 : LDO : aldoin-supply : shared supply | |
101 | BLDO1 : LDO : bldoin-supply : shared supply | |
102 | BLDO2 : LDO : bldoin-supply : shared supply | |
103 | BLDO3 : LDO : bldoin-supply : shared supply | |
104 | BLDO4 : LDO : bldoin-supply : shared supply | |
105 | CLDO1 : LDO : cldoin-supply : shared supply | |
106 | CLDO2 : LDO : cldoin-supply : shared supply | |
107 | CLDO3 : LDO : cldoin-supply : shared supply | |
108 | SW : On/Off Switch : swin-supply | |
109 | ||
110 | Additionally, the AXP806 DC-DC regulators support poly-phase arrangements | |
111 | for higher output current. The possible groupings are: A+B, A+B+C, D+E. | |
112 | ||
bd425113 CYT |
113 | AXP809 regulators, type, and corresponding input supply names: |
114 | ||
115 | Regulator Type Supply Name Notes | |
116 | --------- ---- ----------- ----- | |
117 | DCDC1 : DC-DC buck : vin1-supply | |
118 | DCDC2 : DC-DC buck : vin2-supply | |
119 | DCDC3 : DC-DC buck : vin3-supply | |
120 | DCDC4 : DC-DC buck : vin4-supply | |
121 | DCDC5 : DC-DC buck : vin5-supply | |
122 | DC1SW : On/Off Switch : : DCDC1 secondary output | |
123 | DC5LDO : LDO : : input from DCDC5 | |
124 | ALDO1 : LDO : aldoin-supply : shared supply | |
125 | ALDO2 : LDO : aldoin-supply : shared supply | |
126 | ALDO3 : LDO : aldoin-supply : shared supply | |
127 | DLDO1 : LDO : dldoin-supply : shared supply | |
128 | DLDO2 : LDO : dldoin-supply : shared supply | |
129 | ELDO1 : LDO : eldoin-supply : shared supply | |
130 | ELDO2 : LDO : eldoin-supply : shared supply | |
131 | ELDO3 : LDO : eldoin-supply : shared supply | |
132 | LDO_IO0 : LDO : ips-supply : GPIO 0 | |
133 | LDO_IO1 : LDO : ips-supply : GPIO 1 | |
134 | RTC_LDO : LDO : ips-supply : always on | |
135 | SW : On/Off Switch : swin-supply | |
136 | ||
cf1d5439 CC |
137 | Example: |
138 | ||
139 | axp209: pmic@34 { | |
140 | compatible = "x-powers,axp209"; | |
141 | reg = <0x34>; | |
142 | interrupt-parent = <&nmi_intc>; | |
143 | interrupts = <0 IRQ_TYPE_LEVEL_LOW>; | |
144 | interrupt-controller; | |
145 | #interrupt-cells = <1>; | |
146 | ||
147 | regulators { | |
148 | x-powers,dcdc-freq = <1500>; | |
149 | ||
150 | vdd_cpu: dcdc2 { | |
151 | regulator-always-on; | |
152 | regulator-min-microvolt = <1000000>; | |
153 | regulator-max-microvolt = <1450000>; | |
154 | regulator-name = "vdd-cpu"; | |
155 | }; | |
156 | ||
157 | vdd_int_dll: dcdc3 { | |
158 | regulator-always-on; | |
159 | regulator-min-microvolt = <1000000>; | |
160 | regulator-max-microvolt = <1400000>; | |
161 | regulator-name = "vdd-int-dll"; | |
162 | }; | |
163 | ||
164 | vdd_rtc: ldo1 { | |
165 | regulator-always-on; | |
166 | regulator-min-microvolt = <1200000>; | |
167 | regulator-max-microvolt = <1400000>; | |
168 | regulator-name = "vdd-rtc"; | |
169 | }; | |
170 | ||
171 | avcc: ldo2 { | |
172 | regulator-always-on; | |
173 | regulator-min-microvolt = <2700000>; | |
174 | regulator-max-microvolt = <3300000>; | |
175 | regulator-name = "avcc"; | |
176 | }; | |
177 | ||
178 | ldo3 { | |
179 | /* unused but preferred to be managed by OS */ | |
180 | }; | |
181 | }; | |
182 | }; |