Defining card-detect and write-protect GPIO pins in Odroid XU SD Card
does not change anything from functional point of view - dw-mmc driver
was reading the state from registers.  Adding cd-gpios and wp-gpios
properties changes only internal driver behavior to access the pins
directly.

Add them to DTS only to comprehensively describe the hardware.  Minor
benefit is that write-protect pin configuration makes sure that it will
be properly pulled up to indicate write access.

This also removes debug messages:
    dwmmc_exynos 12220000.mmc: No GPIO consumer cd found
    dwmmc_exynos 12220000.mmc: No GPIO consumer wp found

Signed-off-by: Krzysztof Kozlowski <k...@kernel.org>
---
 arch/arm/boot/dts/exynos5410-odroidxu.dts | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/exynos5410-odroidxu.dts 
b/arch/arm/boot/dts/exynos5410-odroidxu.dts
index a2046f5f998c..dae360f29a47 100644
--- a/arch/arm/boot/dts/exynos5410-odroidxu.dts
+++ b/arch/arm/boot/dts/exynos5410-odroidxu.dts
@@ -525,12 +525,14 @@
 
 &mmc_2 {
        status = "okay";
+       wp-gpios = <&gpm5 0 GPIO_ACTIVE_LOW>;
+       cd-gpios = <&gpc2 2 GPIO_ACTIVE_LOW>;
        card-detect-delay = <200>;
        samsung,dw-mshc-ciu-div = <3>;
        samsung,dw-mshc-sdr-timing = <0 4>;
        samsung,dw-mshc-ddr-timing = <0 2>;
        pinctrl-names = "default";
-       pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus1 &sd2_bus4>;
+       pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus1 &sd2_bus4 &sd2_wp>;
        bus-width = <4>;
        cap-sd-highspeed;
        vmmc-supply = <&ldo21_reg>;
@@ -573,6 +575,14 @@
                samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
                samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
        };
+
+       sd2_wp: sd2-wp {
+               samsung,pins = "gpm5-0";
+               samsung,pin-function = <EXYNOS_PIN_FUNC_2>;
+               /* Pin is floating so pull it up to disable write-protect */
+               samsung,pin-pud = <EXYNOS_PIN_PULL_UP>;
+               samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV4>;
+       };
 };
 
 &pwm {
-- 
2.17.1

Reply via email to