[U-Boot] [PATCH v3 14/20] sunxi: dts: A64 boards: Use fixed regulator for mmc0
Andre Przywara
andre.przywara at arm.com
Fri Mar 2 00:56:53 UTC 2018
Linux kernels before 4.12-rc1 don't know about the AXP803 PMIC, so can't
enable the MMC driver with the current DT anymore, because that now
depends on a driver for this regulator.
To restore compatiblity with older kernels (where MMC worked fine
without explicit AXP support), restore the former fixed-regulator.
This is no technical disadvantage, as the MMC power rail is actually
VDD-SYS, which drives most of the rest of the board, so can't be turned
off anyway. To underline this, this DCDC1 rail is marked as
"regulator-always-on" in the DT.
This affects the BananaPi-M64, NanoPi-A64, Olinuxo-A64.
Signed-off-by: Andre Przywara <andre.przywara at arm.com>
---
arch/arm/dts/sun50i-a64-bananapi-m64.dts | 11 +++++++++--
arch/arm/dts/sun50i-a64-nanopi-a64.dts | 9 ++++++++-
arch/arm/dts/sun50i-a64-olinuxino.dts | 9 ++++++++-
3 files changed, 25 insertions(+), 4 deletions(-)
diff --git a/arch/arm/dts/sun50i-a64-bananapi-m64.dts b/arch/arm/dts/sun50i-a64-bananapi-m64.dts
index 4a8d3f83a3..e84855d633 100644
--- a/arch/arm/dts/sun50i-a64-bananapi-m64.dts
+++ b/arch/arm/dts/sun50i-a64-bananapi-m64.dts
@@ -60,6 +60,13 @@
stdout-path = "serial0:115200n8";
};
+ reg_vcc3v3: vcc3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc3v3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
wifi_pwrseq: wifi_pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
@@ -99,7 +106,7 @@
&mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins>;
- vmmc-supply = <®_dcdc1>;
+ vmmc-supply = <®_vcc3v3>;
cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>;
cd-inverted;
disable-wp;
@@ -129,7 +136,7 @@
&mmc2 {
pinctrl-names = "default";
pinctrl-0 = <&mmc2_pins>;
- vmmc-supply = <®_dcdc1>;
+ vmmc-supply = <®_vcc3v3>;
bus-width = <8>;
non-removable;
cap-mmc-hw-reset;
diff --git a/arch/arm/dts/sun50i-a64-nanopi-a64.dts b/arch/arm/dts/sun50i-a64-nanopi-a64.dts
index 2beef9e6cb..6dedbfe609 100644
--- a/arch/arm/dts/sun50i-a64-nanopi-a64.dts
+++ b/arch/arm/dts/sun50i-a64-nanopi-a64.dts
@@ -57,6 +57,13 @@
chosen {
stdout-path = "serial0:115200n8";
};
+
+ reg_vcc3v3: vcc3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc3v3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
};
&ehci0 {
@@ -81,7 +88,7 @@
&mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins>;
- vmmc-supply = <®_dcdc1>;
+ vmmc-supply = <®_vcc3v3>;
cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>;
cd-inverted;
disable-wp;
diff --git a/arch/arm/dts/sun50i-a64-olinuxino.dts b/arch/arm/dts/sun50i-a64-olinuxino.dts
index 338e786155..c88ec4e281 100644
--- a/arch/arm/dts/sun50i-a64-olinuxino.dts
+++ b/arch/arm/dts/sun50i-a64-olinuxino.dts
@@ -57,12 +57,19 @@
chosen {
stdout-path = "serial0:115200n8";
};
+
+ reg_vcc3v3: vcc3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc3v3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
};
&mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins>;
- vmmc-supply = <®_dcdc1>;
+ vmmc-supply = <®_vcc3v3>;
cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>;
cd-inverted;
disable-wp;
--
2.14.1
More information about the U-Boot
mailing list