Message ID | 20190124122257.20569-1-m.szyprowski@samsung.com |
---|---|
State | New |
Headers | show |
Series | ARM: dts: exynos: Fix pinctrl definition for EMMC RTSN line on OdroidX2/U3 | expand |
On Thu, Jan 24, 2019 at 01:22:57PM +0100, Marek Szyprowski wrote: > Commit 225da7e65a03 ("ARM: dts: add eMMC reset line for > exynos4412-odroid-common") added MMC power sequence for eMMC card. It > reused generic sd1_cd pin control configuration node and only disabled > pull-up. However that time the pinctrl configuration was not applied > during MMC power sequence driver initialization. This has been changed > later by commit d97a1e5d7cd2 ("mmc: pwrseq: convert to proper platform > device"). > > It turned out then, that the provided pinctrl configuration is not > correct, because the EMMC_RTSN line is being re-configured as 'special > function/card detect function for mmc1 controller' not the simple > 'output', thus the power sequence driver doesn't really set the pin > value. Fix this by providing separate node with EMMC_RTSN pin > configuration. > > Reported-by: Markus Reichl <m.reichl@fivetechno.de> > Suggested-by: Ulf Hansson <ulf.hansson@linaro.org> > Fixes: 225da7e65a03 ("ARM: dts: add eMMC reset line for exynos4412-odroid-common") > Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> > --- > arch/arm/boot/dts/exynos4412-odroid-common.dtsi | 13 ++++++------- Thanks, applied with cc-stable. Best regards, Krzysztof
diff --git a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi index 3a9eb1e91c45..8a64c4e8c474 100644 --- a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi +++ b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi @@ -49,7 +49,7 @@ }; emmc_pwrseq: pwrseq { - pinctrl-0 = <&sd1_cd>; + pinctrl-0 = <&emmc_rstn>; pinctrl-names = "default"; compatible = "mmc-pwrseq-emmc"; reset-gpios = <&gpk1 2 GPIO_ACTIVE_LOW>; @@ -165,12 +165,6 @@ cpu0-supply = <&buck2_reg>; }; -/* RSTN signal for eMMC */ -&sd1_cd { - samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; - samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; -}; - &pinctrl_1 { gpio_power_key: power_key { samsung,pins = "gpx1-3"; @@ -188,6 +182,11 @@ samsung,pins = "gpx3-7"; samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>; }; + + emmc_rstn: emmc-rstn { + samsung,pins = "gpk1-2"; + samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; + }; }; &ehci {
Commit 225da7e65a03 ("ARM: dts: add eMMC reset line for exynos4412-odroid-common") added MMC power sequence for eMMC card. It reused generic sd1_cd pin control configuration node and only disabled pull-up. However that time the pinctrl configuration was not applied during MMC power sequence driver initialization. This has been changed later by commit d97a1e5d7cd2 ("mmc: pwrseq: convert to proper platform device"). It turned out then, that the provided pinctrl configuration is not correct, because the EMMC_RTSN line is being re-configured as 'special function/card detect function for mmc1 controller' not the simple 'output', thus the power sequence driver doesn't really set the pin value. Fix this by providing separate node with EMMC_RTSN pin configuration. Reported-by: Markus Reichl <m.reichl@fivetechno.de> Suggested-by: Ulf Hansson <ulf.hansson@linaro.org> Fixes: 225da7e65a03 ("ARM: dts: add eMMC reset line for exynos4412-odroid-common") Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> --- arch/arm/boot/dts/exynos4412-odroid-common.dtsi | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) -- 2.17.1