2021-04-10 19:52:12

by Grzegorz Szymaszek

[permalink] [raw]
Subject: [PATCH] ARM: dts: stm32: fix stm32mp157c-odyssey card detect pin

The microSD card detect pin is physically connected to the MPU pin PI3.
The Device Tree configuration of the card detect pin was wrong—it was
set to pin PB7 instead. If such configuration was used, the kernel would
hang on “Waiting for root device” when booting from a microSD card.

Signed-off-by: Grzegorz Szymaszek <[email protected]>
---
arch/arm/boot/dts/stm32mp157c-odyssey.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts
index a7ffec8f1516..be1dd5e9e744 100644
--- a/arch/arm/boot/dts/stm32mp157c-odyssey.dts
+++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts
@@ -64,7 +64,7 @@ &sdmmc1 {
pinctrl-0 = <&sdmmc1_b4_pins_a>;
pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
- cd-gpios = <&gpiob 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
+ cd-gpios = <&gpioi 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
disable-wp;
st,neg-edge;
bus-width = <4>;
--
2.30.2


2021-05-27 20:34:28

by Grzegorz Szymaszek

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: stm32: fix stm32mp157c-odyssey card detect pin

On Sat, Apr 10, 2021 at 09:35:21PM +0200, Grzegorz Szymaszek wrote:
> The microSD card detect pin is physically connected to the MPU pin PI3.
> The Device Tree configuration of the card detect pin was wrong—it was
> set to pin PB7 instead. If such configuration was used, the kernel would
> hang on “Waiting for root device” when booting from a microSD card.
>
> Signed-off-by: Grzegorz Szymaszek <[email protected]>
> ---
> arch/arm/boot/dts/stm32mp157c-odyssey.dts | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts
> index a7ffec8f1516..be1dd5e9e744 100644
> --- a/arch/arm/boot/dts/stm32mp157c-odyssey.dts
> +++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts
> @@ -64,7 +64,7 @@ &sdmmc1 {
> pinctrl-0 = <&sdmmc1_b4_pins_a>;
> pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
> pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
> - cd-gpios = <&gpiob 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> + cd-gpios = <&gpioi 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> disable-wp;
> st,neg-edge;
> bus-width = <4>;
> --
> 2.30.2
>

A gentle ping. FWIW, there was another patch that would deal with the
same issue:
<https://st-md-mailman.stormreply.com/pipermail/linux-stm32/2021-April/011132.html>,
but it took the more radical approach of of replacing cd-gpios with
broken-cd.

--
Grzegorz

2021-06-01 09:29:19

by Alexandre TORGUE

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: stm32: fix stm32mp157c-odyssey card detect pin

On 4/10/21 9:35 PM, Grzegorz Szymaszek wrote:
> The microSD card detect pin is physically connected to the MPU pin PI3.
> The Device Tree configuration of the card detect pin was wrong—it was
> set to pin PB7 instead. If such configuration was used, the kernel would
> hang on “Waiting for root device” when booting from a microSD card.
>
> Signed-off-by: Grzegorz Szymaszek <[email protected]>
> ---
> arch/arm/boot/dts/stm32mp157c-odyssey.dts | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/stm32mp157c-odyssey.dts b/arch/arm/boot/dts/stm32mp157c-odyssey.dts
> index a7ffec8f1516..be1dd5e9e744 100644
> --- a/arch/arm/boot/dts/stm32mp157c-odyssey.dts
> +++ b/arch/arm/boot/dts/stm32mp157c-odyssey.dts
> @@ -64,7 +64,7 @@ &sdmmc1 {
> pinctrl-0 = <&sdmmc1_b4_pins_a>;
> pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
> pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
> - cd-gpios = <&gpiob 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> + cd-gpios = <&gpioi 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
> disable-wp;
> st,neg-edge;
> bus-width = <4>;
>

Hi Grzegorz

Applied on stm32-next.

Thanks.
Alex