@@ -5,27 +5,19 @@
#include "sunxi-bananapi-m2-plus.dtsi"
-/ {
+®_vdd_cpux {
/*
* Bananapi M2+ v1.2 uses a GPIO line to change the effective
* resistance on the CPU regulator's feedback pin.
*/
- reg_vdd_cpux: vdd-cpux {
- compatible = "regulator-gpio";
- regulator-name = "vdd-cpux";
- regulator-type = "voltage";
- regulator-boot-on;
- regulator-always-on;
- regulator-min-microvolt = <1108475>;
- regulator-max-microvolt = <1308475>;
- regulator-ramp-delay = <50>; /* 4ms */
- gpios = <&r_pio 0 1 GPIO_ACTIVE_HIGH>; /* PL1 */
- gpios-states = <0x1>;
- states = <1108475 0x0
- 1308475 0x1>;
- };
-};
-
-&cpu0 {
- cpu-supply = <®_vdd_cpux>;
+ compatible = "regulator-gpio";
+ regulator-type = "voltage";
+ regulator-min-microvolt = <1108475>;
+ regulator-max-microvolt = <1308475>;
+ regulator-ramp-delay = <50>; /* 4ms */
+ enable-gpios = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
+ gpios = <&r_pio 0 1 GPIO_ACTIVE_HIGH>; /* PL1 */
+ gpios-states = <0x1>;
+ states = <1108475 0x0
+ 1308475 0x1>;
};
@@ -99,6 +99,16 @@
gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>;
};
+ reg_vdd_cpux: vdd-cpux {
+ compatible = "regulator-fixed";
+ regulator-name = "vdd-cpux";
+ regulator-boot-on;
+ regulator-always-on;
+ regulator-min-microvolt = <1310000>;
+ regulator-max-microvolt = <1310000>;
+ gpios = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
+ };
+
wifi_pwrseq: wifi_pwrseq {
compatible = "mmc-pwrseq-simple";
pinctrl-names = "default";
@@ -108,6 +118,10 @@
};
};
+&cpu0 {
+ cpu-supply = <®_vdd_cpux>;
+};
+
&de {
status = "okay";
};
The original Bananapi M2+ uses a fixed regulator to supply the CPU cores. According to Bananapi, the retail v1.1 version is designed to supply 1.3V. Actual measurements show 1.310V. Earlier engineering samples had it at 1.4V, but this is not covered here. Signed-off-by: Chen-Yu Tsai <wens@csie.org> --- .../boot/dts/sunxi-bananapi-m2-plus-v1.2.dtsi | 30 +++++++------------ arch/arm/boot/dts/sunxi-bananapi-m2-plus.dtsi | 14 +++++++++ 2 files changed, 25 insertions(+), 19 deletions(-)