Commit 90c5d7cd authored by Maxime Ripard's avatar Maxime Ripard

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: default avatarChen-Yu Tsai <wens@csie.org>
Signed-off-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
parent 337cce7e
...@@ -43,7 +43,8 @@ ...@@ -43,7 +43,8 @@
/dts-v1/; /dts-v1/;
#include "sun8i-a83t.dtsi" #include "sun8i-a83t.dtsi"
#include "sunxi-common-regulators.dtsi"
#include <dt-bindings/gpio/gpio.h>
/ { / {
model = "TBS A711 Tablet"; model = "TBS A711 Tablet";
...@@ -105,7 +106,7 @@ &ehci1 { ...@@ -105,7 +106,7 @@ &ehci1 {
}; };
&mmc0 { &mmc0 {
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_dcdc1>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins>; pinctrl-0 = <&mmc0_pins>;
cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
...@@ -115,8 +116,8 @@ &mmc0 { ...@@ -115,8 +116,8 @@ &mmc0 {
&mmc1 { &mmc1 {
mmc-pwrseq = <&wifi_pwrseq>; mmc-pwrseq = <&wifi_pwrseq>;
bus-width = <4>; bus-width = <4>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_dldo1>;
vqmmc-supply = <&reg_vcc3v3>; vqmmc-supply = <&reg_dldo1>;
non-removable; non-removable;
wakeup-source; wakeup-source;
status = "okay"; status = "okay";
...@@ -133,8 +134,8 @@ brcmf: wifi@1 { ...@@ -133,8 +134,8 @@ brcmf: wifi@1 {
&mmc2 { &mmc2 {
pinctrl-0 = <&mmc2_8bit_emmc_pins>; pinctrl-0 = <&mmc2_8bit_emmc_pins>;
pinctrl-names = "default"; pinctrl-names = "default";
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_dcdc1>;
vqmmc-supply = <&reg_vcc3v3>; vqmmc-supply = <&reg_dcdc1>;
bus-width = <8>; bus-width = <8>;
non-removable; non-removable;
cap-mmc-hw-reset; cap-mmc-hw-reset;
...@@ -144,11 +145,12 @@ &mmc2 { ...@@ -144,11 +145,12 @@ &mmc2 {
&r_rsb { &r_rsb {
status = "okay"; status = "okay";
axp813: pmic@3a3 { axp81x: pmic@3a3 {
compatible = "x-powers,axp813";
reg = <0x3a3>; reg = <0x3a3>;
interrupt-parent = <&r_intc>; interrupt-parent = <&r_intc>;
interrupts = <0 IRQ_TYPE_LEVEL_LOW>; interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
swin-supply = <&reg_dcdc1>;
x-powers,drive-vbus-en;
}; };
ac100: codec@e89 { ac100: codec@e89 {
...@@ -177,6 +179,149 @@ ac100_rtc: rtc { ...@@ -177,6 +179,149 @@ ac100_rtc: rtc {
}; };
#include "axp81x.dtsi"
&reg_aldo1 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc-1.8";
};
&reg_aldo2 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-name = "vdd-drampll";
};
&reg_aldo3 {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-always-on;
regulator-name = "avcc";
};
&reg_dcdc1 {
regulator-min-microvolt = <3100000>;
regulator-max-microvolt = <3100000>;
regulator-always-on;
regulator-name = "vcc-io";
};
&reg_dcdc2 {
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1100000>;
regulator-always-on;
regulator-name = "vdd-cpu-A";
};
&reg_dcdc3 {
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1100000>;
regulator-always-on;
regulator-name = "vdd-cpu-B";
};
&reg_dcdc4 {
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1100000>;
regulator-name = "vdd-gpu";
};
&reg_dcdc5 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1500000>;
regulator-always-on;
regulator-name = "vcc-dram";
};
&reg_dcdc6 {
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <900000>;
regulator-always-on;
regulator-name = "vdd-sys";
};
&reg_dldo1 {
regulator-min-microvolt = <3100000>;
regulator-max-microvolt = <3100000>;
regulator-name = "vcc-wifi-io";
};
&reg_dldo2 {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <4200000>;
regulator-name = "vcc-mipi";
};
&reg_dldo3 {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-name = "vdd-csi";
};
&reg_dldo4 {
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-name = "avdd-csi";
};
&reg_drivevbus {
regulator-name = "usb0-vbus";
status = "okay";
};
&reg_eldo1 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1800000>;
regulator-name = "dvdd-csi-r";
};
&reg_eldo2 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-name = "vcc-dsi";
};
&reg_eldo3 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1800000>;
regulator-name = "dvdd-csi-f";
};
&reg_fldo1 {
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-name = "vcc-hsic";
};
&reg_fldo2 {
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1100000>;
regulator-always-on;
regulator-name = "vdd-cpus";
};
&reg_ldo_io0 {
regulator-min-microvolt = <3100000>;
regulator-max-microvolt = <3100000>;
regulator-name = "vcc-ctp";
status = "okay";
};
&reg_ldo_io1 {
regulator-min-microvolt = <3100000>;
regulator-max-microvolt = <3100000>;
regulator-name = "vcc-vb";
status = "okay";
};
&reg_sw {
regulator-min-microvolt = <3100000>;
regulator-max-microvolt = <3100000>;
regulator-name = "vcc-lcd";
};
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pb_pins>; pinctrl-0 = <&uart0_pb_pins>;
...@@ -191,7 +336,7 @@ &uart1 { ...@@ -191,7 +336,7 @@ &uart1 {
}; };
&usbphy { &usbphy {
usb1_vbus_supply = <&reg_vcc5v0>; usb1_vbus_supply = <&reg_vmain>;
usb2_vbus_supply = <&reg_vcc5v0>; usb2_vbus_supply = <&reg_vmain>;
status = "okay"; status = "okay";
}; };
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment