[PATCH] arm64: dts: rockchip: add workaround for microSD card detection on Radxa ROCK 3A
Heiko Stübner
heiko at sntech.de
Wed Sep 4 11:32:54 PDT 2024
Hi,
Am Dienstag, 3. September 2024, 10:55:50 CEST schrieb FUKAUMI Naoki:
> Radxa ROCK 3A doesn't detect microSD card insertion/removal correctly.
> it happens from Linux v5.19 to v6.11-rc6.
>
> add workaround (broken-cd property) to make CD work.
>
> Fixes: 22a442e6586c ("arm64: dts: rockchip: add basic dts for the radxa rock3 model a")
> Signed-off-by: FUKAUMI Naoki <naoki at radxa.com>
before going for such drastic measures as broken-cd, can you describe how
you checked the card insert/removal ?
I.e. in the dts node below we have both cd-gpios as well as the sdmmc0_det
pinctrl which would set the pinfunc 1 ... the hw-based card detect and
possibly override the cd-gpios?
What happens if you just remove the sdmmc0_det and keep the cd-gpios
property?
Also, what does cat /sys/kernel/debug/gpio report after that change
with inserted and removed cards?
Heiko
> ---
> arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts
> index 59f1403b4fa5..89599258ef9c 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts
> @@ -722,12 +722,12 @@ &sdhci {
> };
>
> &sdmmc0 {
> + broken-cd;
> bus-width = <4>;
> cap-sd-highspeed;
> - cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
> disable-wp;
> pinctrl-names = "default";
> - pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
> + pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd>;
> sd-uhs-sdr50;
> vmmc-supply = <&vcc3v3_sd>;
> vqmmc-supply = <&vccio_sd>;
>
More information about the Linux-rockchip
mailing list