]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
ARM: dts: exynos: Fix pinctrl definition for eMMC RTSN line on Odroid X2/U3
authorMarek Szyprowski <m.szyprowski@samsung.com>
Thu, 24 Jan 2019 12:22:57 +0000 (13:22 +0100)
committerKrzysztof Kozlowski <krzk@kernel.org>
Fri, 25 Jan 2019 19:18:10 +0000 (20:18 +0100)
Commit 225da7e65a03 ("ARM: dts: add eMMC reset line for
exynos4412-odroid-common") added MMC power sequence for eMMC card of
Odroid X2/U3. 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. This in effect broke the reboot of Odroid X2/U3 boards. Fix this
by providing separate node with eMMC_RTSN pin configuration.

Cc: <stable@vger.kernel.org>
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>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
arch/arm/boot/dts/exynos4412-odroid-common.dtsi

index 24bcad3dfba908061b958e908d5469f223eefabd..08d3a0a7b4eb32476e0824216dbc71a67134bfd3 100644 (file)
@@ -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>;
        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";
                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 {