diff mbox series

arm64: dts: rockchip: rk3399-nanopi4: Fix voltage regulator config

Message ID 963AF33B-54B7-4172-92D1-E2898E256A7E@kohlschutter.com (mailing list archive)
State New, archived
Headers show
Series arm64: dts: rockchip: rk3399-nanopi4: Fix voltage regulator config | expand

Commit Message

Christian Kohlschütter July 17, 2022, 7:29 p.m. UTC
A series of issues exist around the "vcc3v0_sd" voltage regulator that
made it necessary to mark it "always-on".

With the patch "regulator: core: Resolve supply name earlier to prevent
double-init", this option is no longer necessary.

Removing this option not only prevents a hang when rebooting Nanopi R4S,
it also ensures that bootloaders like u-boot can boot from an SD card
right away, without out-of-tree patches that re-initialize voltage levels.

Signed-off-by: Christian Kohlschütter <christian@kohlschutter.com>
---
 arch/arm64/boot/dts/rockchip/rk3399-nanopi4.dtsi | 1 -
 1 file changed, 1 deletion(-)

Comments

Christian Kohlschütter July 17, 2022, 7:32 p.m. UTC | #1
This patch obviously requires "regulator: core: Resolve supply name earlier to prevent double-init" and obsoletes "[PATCH v5] arm64: dts: rockchip: Fix SD card init on rk3399-nanopi4".
The latter patch may still be useful for existing kernels where one can recompile the device tree separately.

> Am 17.07.2022 um 21:29 schrieb Christian Kohlschütter <christian@kohlschutter.com>:
> 
> A series of issues exist around the "vcc3v0_sd" voltage regulator that
> made it necessary to mark it "always-on".
> 
> With the patch "regulator: core: Resolve supply name earlier to prevent
> double-init", this option is no longer necessary.
> 
> Removing this option not only prevents a hang when rebooting Nanopi R4S,
> it also ensures that bootloaders like u-boot can boot from an SD card
> right away, without out-of-tree patches that re-initialize voltage levels.
> 
> Signed-off-by: Christian Kohlschütter <christian@kohlschutter.com>
> ---
> arch/arm64/boot/dts/rockchip/rk3399-nanopi4.dtsi | 1 -
> 1 file changed, 1 deletion(-)
> 
> diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4.dtsi
> index 8c0ff6c96e03..55b93eac2f99 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4.dtsi
> +++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4.dtsi
> @@ -70,7 +70,6 @@ vcc3v0_sd: vcc3v0-sd {
> 		gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>;
> 		pinctrl-names = "default";
> 		pinctrl-0 = <&sdmmc0_pwr_h>;
> -		regulator-always-on;
> 		regulator-min-microvolt = <3000000>;
> 		regulator-max-microvolt = <3000000>;
> 		regulator-name = "vcc3v0_sd";
> -- 
> 2.36.1
> 
>
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4.dtsi
index 8c0ff6c96e03..55b93eac2f99 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi4.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi4.dtsi
@@ -70,7 +70,6 @@  vcc3v0_sd: vcc3v0-sd {
 		gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>;
 		pinctrl-names = "default";
 		pinctrl-0 = <&sdmmc0_pwr_h>;
-		regulator-always-on;
 		regulator-min-microvolt = <3000000>;
 		regulator-max-microvolt = <3000000>;
 		regulator-name = "vcc3v0_sd";