mirror of https://gitee.com/openkylin/linux.git
arm64: allwinner: a64: enable AXP803 regulators for Pine64
Add support of AXP803 regulators in the Pine64 device tree. The phy-supply regulator is also set in EMAC device node, in order to prevent Ethernet regression by regulator get disabled by regulator framework. Signed-off-by: Icenowy Zheng <icenowy@aosc.io> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
This commit is contained in:
parent
4c0a84757b
commit
2f005b4407
|
@ -83,6 +83,7 @@ &emac {
|
|||
pinctrl-0 = <&rmii_pins>;
|
||||
phy-mode = "rmii";
|
||||
phy-handle = <&ext_rmii_phy1>;
|
||||
phy-supply = <®_dc1sw>;
|
||||
status = "okay";
|
||||
|
||||
};
|
||||
|
@ -134,6 +135,107 @@ axp803: pmic@3a3 {
|
|||
};
|
||||
};
|
||||
|
||||
#include "axp803.dtsi"
|
||||
|
||||
®_aldo2 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-name = "vcc-pl";
|
||||
};
|
||||
|
||||
®_aldo3 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-name = "vcc-pll-avcc";
|
||||
};
|
||||
|
||||
®_dc1sw {
|
||||
regulator-name = "vcc-phy";
|
||||
};
|
||||
|
||||
®_dcdc1 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-name = "vcc-3v3";
|
||||
};
|
||||
|
||||
®_dcdc2 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1040000>;
|
||||
regulator-max-microvolt = <1300000>;
|
||||
regulator-name = "vdd-cpux";
|
||||
};
|
||||
|
||||
/* DCDC3 is polyphased with DCDC2 */
|
||||
|
||||
/*
|
||||
* The DRAM chips used by Pine64 boards are DDR3L-compatible, so they can
|
||||
* work at 1.35V with less power consumption.
|
||||
* As AXP803 DCDC5 cannot reach 1.35V accurately, use 1.36V instead.
|
||||
*/
|
||||
®_dcdc5 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1360000>;
|
||||
regulator-max-microvolt = <1360000>;
|
||||
regulator-name = "vcc-dram";
|
||||
};
|
||||
|
||||
®_dcdc6 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1100000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
regulator-name = "vdd-sys";
|
||||
};
|
||||
|
||||
®_dldo1 {
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-name = "vcc-hdmi";
|
||||
};
|
||||
|
||||
®_dldo2 {
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-name = "vcc-mipi";
|
||||
};
|
||||
|
||||
®_dldo4 {
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-name = "vcc-wifi";
|
||||
};
|
||||
|
||||
®_eldo1 {
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-name = "cpvdd";
|
||||
};
|
||||
|
||||
®_fldo1 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-name = "vcc-1v2-hsic";
|
||||
};
|
||||
|
||||
/*
|
||||
* The A64 chip cannot work without this regulator off, although
|
||||
* it seems to be only driving the AR100 core.
|
||||
* Maybe we don't still know well about CPUs domain.
|
||||
*/
|
||||
®_fldo2 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1100000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
regulator-name = "vdd-cpus";
|
||||
};
|
||||
|
||||
®_rtc_ldo {
|
||||
regulator-name = "vcc-rtc";
|
||||
};
|
||||
|
||||
/* On Exp and Euler connectors */
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
|
|
Loading…
Reference in New Issue