Message ID | 20220904233652.3197885-1-megi@xff.cz (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64: dts: rockchip: Fix SD card controller probe on Pinephone Pro | expand |
On 05/09/2022 00:36, Ondrej Jirman wrote: > Voltage constraints on vccio_sd are invalid. They don't match the voltages > that LDO9 can generate, and this causes rk808-regulator driver to fail > to probe with -EINVAL when it tries to apply the constraints during boot. > > Fix the constraints to something that LDO9 can be actually configured for. > > Fixes: 78a21c7d5952 ("arm64: dts: rockchip: Add initial support for Pine64 PinePhone Pro") > Signed-off-by: Ondrej Jirman <megi@xff.cz> Reviewed-by: Caleb Connolly <kc@postmarketos.org> > --- > arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts > index f00c80361377a..2e058c3150256 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts > @@ -253,8 +253,8 @@ regulator-state-mem { > > vccio_sd: LDO_REG9 { > regulator-name = "vccio_sd"; > - regulator-min-microvolt = <1710000>; > - regulator-max-microvolt = <3150000>; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > }; > > vcc3v3_s0: SWITCH_REG {
On 5/9/22 09:36, Ondrej Jirman wrote: > Voltage constraints on vccio_sd are invalid. They don't match the voltages > that LDO9 can generate, and this causes rk808-regulator driver to fail > to probe with -EINVAL when it tries to apply the constraints during boot. On most boots, the SD card probe succeeds, and is able to be mounted. On some boots, however, I observe this bug with error message: vccio_sd: failed to apply 3150000-3150000uV constraint: -EINVAL > > Fix the constraints to something that LDO9 can be actually configured for. > > Fixes: 78a21c7d5952 ("arm64: dts: rockchip: Add initial support for Pine64 PinePhone Pro") > Signed-off-by: Ondrej Jirman <megi@xff.cz> Reviewed-by: Tom Fitzhenry <tom@tom-fitzhenry.me.uk> Tested-by: Tom Fitzhenry <tom@tom-fitzhenry.me.uk>
On Mon, 5 Sep 2022 01:36:47 +0200, Ondrej Jirman wrote: > Voltage constraints on vccio_sd are invalid. They don't match the voltages > that LDO9 can generate, and this causes rk808-regulator driver to fail > to probe with -EINVAL when it tries to apply the constraints during boot. > > Fix the constraints to something that LDO9 can be actually configured for. Applied, thanks! [1/1] arm64: dts: rockchip: Fix SD card controller probe on Pinephone Pro commit: 024744964ef6c0a65e348afafd4e1feae08eba5e Best regards,
On Mon, Sep 05, 2022 at 01:36:47AM +0200, Ondrej Jirman wrote: > Voltage constraints on vccio_sd are invalid. They don't match the voltages > that LDO9 can generate, and this causes rk808-regulator driver to fail > to probe with -EINVAL when it tries to apply the constraints during boot. > > Fix the constraints to something that LDO9 can be actually configured for. > > Fixes: 78a21c7d5952 ("arm64: dts: rockchip: Add initial support for Pine64 PinePhone Pro") > Signed-off-by: Ondrej Jirman <megi@xff.cz> > --- > arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts > index f00c80361377a..2e058c3150256 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts > @@ -253,8 +253,8 @@ regulator-state-mem { > > vccio_sd: LDO_REG9 { > regulator-name = "vccio_sd"; > - regulator-min-microvolt = <1710000>; > - regulator-max-microvolt = <3150000>; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; Shouldn't the maximum be 3.1V? The SDMMC0_VDD pin on RK3399 that this regulator is connected to expects a maximum voltage of 3.15V, so 3.3V would be too high. The output voltage for LDO9 is configured in 100mV steps, so I imagine that's why 3.15V fails, but 3.1V should work fine. I haven't tested yet though. Thanks, Nícolas
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts index f00c80361377a..2e058c3150256 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts +++ b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts @@ -253,8 +253,8 @@ regulator-state-mem { vccio_sd: LDO_REG9 { regulator-name = "vccio_sd"; - regulator-min-microvolt = <1710000>; - regulator-max-microvolt = <3150000>; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; }; vcc3v3_s0: SWITCH_REG {
Voltage constraints on vccio_sd are invalid. They don't match the voltages that LDO9 can generate, and this causes rk808-regulator driver to fail to probe with -EINVAL when it tries to apply the constraints during boot. Fix the constraints to something that LDO9 can be actually configured for. Fixes: 78a21c7d5952 ("arm64: dts: rockchip: Add initial support for Pine64 PinePhone Pro") Signed-off-by: Ondrej Jirman <megi@xff.cz> --- arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)