Skip to content

Commit 90c5d7c

Browse files
committed
ARM: dts: sun8i: a711: Add regulator support
The TBS A711 is using an AXP813 PMIC. Let's add all the regulators for that board, and migrate the current, dumb, regulators to the actual ones. Acked-by: Chen-Yu Tsai <wens@csie.org> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
1 parent 337cce7 commit 90c5d7c

File tree

1 file changed

+155
-10
lines changed

1 file changed

+155
-10
lines changed

arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts

Lines changed: 155 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@
4343

4444
/dts-v1/;
4545
#include "sun8i-a83t.dtsi"
46-
#include "sunxi-common-regulators.dtsi"
46+
47+
#include <dt-bindings/gpio/gpio.h>
4748

4849
/ {
4950
model = "TBS A711 Tablet";
@@ -105,7 +106,7 @@
105106
};
106107

107108
&mmc0 {
108-
vmmc-supply = <&reg_vcc3v3>;
109+
vmmc-supply = <&reg_dcdc1>;
109110
pinctrl-names = "default";
110111
pinctrl-0 = <&mmc0_pins>;
111112
cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
@@ -115,8 +116,8 @@
115116
&mmc1 {
116117
mmc-pwrseq = <&wifi_pwrseq>;
117118
bus-width = <4>;
118-
vmmc-supply = <&reg_vcc3v3>;
119-
vqmmc-supply = <&reg_vcc3v3>;
119+
vmmc-supply = <&reg_dldo1>;
120+
vqmmc-supply = <&reg_dldo1>;
120121
non-removable;
121122
wakeup-source;
122123
status = "okay";
@@ -133,8 +134,8 @@
133134
&mmc2 {
134135
pinctrl-0 = <&mmc2_8bit_emmc_pins>;
135136
pinctrl-names = "default";
136-
vmmc-supply = <&reg_vcc3v3>;
137-
vqmmc-supply = <&reg_vcc3v3>;
137+
vmmc-supply = <&reg_dcdc1>;
138+
vqmmc-supply = <&reg_dcdc1>;
138139
bus-width = <8>;
139140
non-removable;
140141
cap-mmc-hw-reset;
@@ -144,11 +145,12 @@
144145
&r_rsb {
145146
status = "okay";
146147

147-
axp813: pmic@3a3 {
148-
compatible = "x-powers,axp813";
148+
axp81x: pmic@3a3 {
149149
reg = <0x3a3>;
150150
interrupt-parent = <&r_intc>;
151151
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
152+
swin-supply = <&reg_dcdc1>;
153+
x-powers,drive-vbus-en;
152154
};
153155

154156
ac100: codec@e89 {
@@ -177,6 +179,149 @@
177179

178180
};
179181

182+
#include "axp81x.dtsi"
183+
184+
&reg_aldo1 {
185+
regulator-min-microvolt = <1800000>;
186+
regulator-max-microvolt = <1800000>;
187+
regulator-name = "vcc-1.8";
188+
};
189+
190+
&reg_aldo2 {
191+
regulator-min-microvolt = <1800000>;
192+
regulator-max-microvolt = <1800000>;
193+
regulator-always-on;
194+
regulator-name = "vdd-drampll";
195+
};
196+
197+
&reg_aldo3 {
198+
regulator-min-microvolt = <3000000>;
199+
regulator-max-microvolt = <3000000>;
200+
regulator-always-on;
201+
regulator-name = "avcc";
202+
};
203+
204+
&reg_dcdc1 {
205+
regulator-min-microvolt = <3100000>;
206+
regulator-max-microvolt = <3100000>;
207+
regulator-always-on;
208+
regulator-name = "vcc-io";
209+
};
210+
211+
&reg_dcdc2 {
212+
regulator-min-microvolt = <700000>;
213+
regulator-max-microvolt = <1100000>;
214+
regulator-always-on;
215+
regulator-name = "vdd-cpu-A";
216+
};
217+
218+
&reg_dcdc3 {
219+
regulator-min-microvolt = <700000>;
220+
regulator-max-microvolt = <1100000>;
221+
regulator-always-on;
222+
regulator-name = "vdd-cpu-B";
223+
};
224+
225+
&reg_dcdc4 {
226+
regulator-min-microvolt = <700000>;
227+
regulator-max-microvolt = <1100000>;
228+
regulator-name = "vdd-gpu";
229+
};
230+
231+
&reg_dcdc5 {
232+
regulator-min-microvolt = <1200000>;
233+
regulator-max-microvolt = <1500000>;
234+
regulator-always-on;
235+
regulator-name = "vcc-dram";
236+
};
237+
238+
&reg_dcdc6 {
239+
regulator-min-microvolt = <900000>;
240+
regulator-max-microvolt = <900000>;
241+
regulator-always-on;
242+
regulator-name = "vdd-sys";
243+
};
244+
245+
&reg_dldo1 {
246+
regulator-min-microvolt = <3100000>;
247+
regulator-max-microvolt = <3100000>;
248+
regulator-name = "vcc-wifi-io";
249+
};
250+
251+
&reg_dldo2 {
252+
regulator-min-microvolt = <2800000>;
253+
regulator-max-microvolt = <4200000>;
254+
regulator-name = "vcc-mipi";
255+
};
256+
257+
&reg_dldo3 {
258+
regulator-min-microvolt = <2800000>;
259+
regulator-max-microvolt = <2800000>;
260+
regulator-name = "vdd-csi";
261+
};
262+
263+
&reg_dldo4 {
264+
regulator-min-microvolt = <2800000>;
265+
regulator-max-microvolt = <2800000>;
266+
regulator-name = "avdd-csi";
267+
};
268+
269+
&reg_drivevbus {
270+
regulator-name = "usb0-vbus";
271+
status = "okay";
272+
};
273+
274+
&reg_eldo1 {
275+
regulator-min-microvolt = <1200000>;
276+
regulator-max-microvolt = <1800000>;
277+
regulator-name = "dvdd-csi-r";
278+
};
279+
280+
&reg_eldo2 {
281+
regulator-min-microvolt = <1800000>;
282+
regulator-max-microvolt = <1800000>;
283+
regulator-name = "vcc-dsi";
284+
};
285+
286+
&reg_eldo3 {
287+
regulator-min-microvolt = <1200000>;
288+
regulator-max-microvolt = <1800000>;
289+
regulator-name = "dvdd-csi-f";
290+
};
291+
292+
&reg_fldo1 {
293+
regulator-min-microvolt = <1200000>;
294+
regulator-max-microvolt = <1200000>;
295+
regulator-name = "vcc-hsic";
296+
};
297+
298+
&reg_fldo2 {
299+
regulator-min-microvolt = <700000>;
300+
regulator-max-microvolt = <1100000>;
301+
regulator-always-on;
302+
regulator-name = "vdd-cpus";
303+
};
304+
305+
&reg_ldo_io0 {
306+
regulator-min-microvolt = <3100000>;
307+
regulator-max-microvolt = <3100000>;
308+
regulator-name = "vcc-ctp";
309+
status = "okay";
310+
};
311+
312+
&reg_ldo_io1 {
313+
regulator-min-microvolt = <3100000>;
314+
regulator-max-microvolt = <3100000>;
315+
regulator-name = "vcc-vb";
316+
status = "okay";
317+
};
318+
319+
&reg_sw {
320+
regulator-min-microvolt = <3100000>;
321+
regulator-max-microvolt = <3100000>;
322+
regulator-name = "vcc-lcd";
323+
};
324+
180325
&uart0 {
181326
pinctrl-names = "default";
182327
pinctrl-0 = <&uart0_pb_pins>;
@@ -191,7 +336,7 @@
191336
};
192337

193338
&usbphy {
194-
usb1_vbus_supply = <&reg_vcc5v0>;
195-
usb2_vbus_supply = <&reg_vcc5v0>;
339+
usb1_vbus_supply = <&reg_vmain>;
340+
usb2_vbus_supply = <&reg_vmain>;
196341
status = "okay";
197342
};

0 commit comments

Comments
 (0)