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 <[email protected]>:
>
> 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 <[email protected]>
> ---
> 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
>
>