* [PATCH] arm64: dts: rockchip: add workaround for microSD card detection on Radxa ROCK 3A
@ 2024-09-03 8:55 FUKAUMI Naoki
2024-09-04 18:32 ` Heiko Stübner
0 siblings, 1 reply; 3+ messages in thread
From: FUKAUMI Naoki @ 2024-09-03 8:55 UTC (permalink / raw)
To: heiko; +Cc: michael.riesch, linux-rockchip, 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@radxa.com>
---
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>;
--
2.43.0
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] arm64: dts: rockchip: add workaround for microSD card detection on Radxa ROCK 3A
2024-09-03 8:55 [PATCH] arm64: dts: rockchip: add workaround for microSD card detection on Radxa ROCK 3A FUKAUMI Naoki
@ 2024-09-04 18:32 ` Heiko Stübner
2024-09-05 8:49 ` FUKAUMI Naoki
0 siblings, 1 reply; 3+ messages in thread
From: Heiko Stübner @ 2024-09-04 18:32 UTC (permalink / raw)
To: FUKAUMI Naoki; +Cc: michael.riesch, linux-rockchip, FUKAUMI Naoki
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@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>;
>
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] arm64: dts: rockchip: add workaround for microSD card detection on Radxa ROCK 3A
2024-09-04 18:32 ` Heiko Stübner
@ 2024-09-05 8:49 ` FUKAUMI Naoki
0 siblings, 0 replies; 3+ messages in thread
From: FUKAUMI Naoki @ 2024-09-05 8:49 UTC (permalink / raw)
To: Heiko Stübner; +Cc: michael.riesch, linux-rockchip
hi,
On 9/5/24 03:32, Heiko Stübner wrote:
> 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@radxa.com>
>
> before going for such drastic measures as broken-cd, can you describe how
> you checked the card insert/removal ?
basically, dmesg.
> 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?
nothing is changed if pinfunc is 0 or 1 , i.e. CD is not working both
configuration.
> Also, what does cat /sys/kernel/debug/gpio report after that change
> with inserted and removed cards?
it's always "hi".
$ sudo grep 'gpio-4 ' /sys/kernel/debug/gpio
gpio-4 ( |cd ) in hi IRQ ACTIVE LOW
----
I forgot to explain about exception. only if microSD card is inserted
before kernel boot, card is recognized and accessible.
in this case, gpio-4 is "lo" till card is removed.
when card is removed, gpio-4 goes "hi", dmesg shows "mmc1: card 1234
removed".
after that, even if card is inserted again, gpio-4 never goes "lo", card
is never detected.
btw, I usually put bootloader on microSD card. (kernel and userland are
on USB-SSD)
this time, I tried "boot from SPI flash", but nothing is changed.
I understand this is very strange, I'm okay if this patch is rejected.
I want to know more information from other users to find out real solution.
Best regards,
--
FUKAUMI Naoki
Radxa Computer (Shenzhen) Co., Ltd.
> 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>;
>>
>
>
>
>
>
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-09-05 8:50 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-03 8:55 [PATCH] arm64: dts: rockchip: add workaround for microSD card detection on Radxa ROCK 3A FUKAUMI Naoki
2024-09-04 18:32 ` Heiko Stübner
2024-09-05 8:49 ` FUKAUMI Naoki
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox