From 55bf73c13b2c36ed7a33c1c66564fff46b53342f Mon Sep 17 00:00:00 2001 From: lintao Date: Tue, 6 May 2014 15:19:24 +0800 Subject: [PATCH] mmc: host: rk_sdmmc: Add rk32 mmc controller with cap HW_RESET support, default N. --- Documentation/devicetree/bindings/mmc/rockchip-dw-mshc.txt | 2 ++ arch/arm/boot/dts/rk3288-tb.dts | 3 ++- drivers/mmc/host/rk_sdmmc.c | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/mmc/rockchip-dw-mshc.txt b/Documentation/devicetree/bindings/mmc/rockchip-dw-mshc.txt index 7919b4ca362b..0b5377893716 100755 --- a/Documentation/devicetree/bindings/mmc/rockchip-dw-mshc.txt +++ b/Documentation/devicetree/bindings/mmc/rockchip-dw-mshc.txt @@ -82,6 +82,8 @@ Required Properties: * vmmc-supply: The phandle to the regulator to use for vmmc. If this is specified we'll defer probe until we can find this regulator. +* poll-hw-reset: need hardware reset for some eMMCs with VCCQ always supplied when powered up + to enter idle state. Example: adding device info in dtsi file diff --git a/arch/arm/boot/dts/rk3288-tb.dts b/arch/arm/boot/dts/rk3288-tb.dts index 6f6643562980..fcf27607c3c5 100755 --- a/arch/arm/boot/dts/rk3288-tb.dts +++ b/arch/arm/boot/dts/rk3288-tb.dts @@ -211,7 +211,8 @@ bootpart-no-access; ignore-pm-notify; keep-power-in-suspend; - status = "okay"; + //poll-hw-reset + status = "okay"; }; &sdmmc { diff --git a/drivers/mmc/host/rk_sdmmc.c b/drivers/mmc/host/rk_sdmmc.c index 992e792b5b69..1f866f0ba781 100755 --- a/drivers/mmc/host/rk_sdmmc.c +++ b/drivers/mmc/host/rk_sdmmc.c @@ -2761,6 +2761,8 @@ static int dw_mci_init_slot(struct dw_mci *host, unsigned int id) mmc->caps |= MMC_CAP_POWER_OFF_CARD; if (of_find_property(host->dev->of_node, "cap-sdio-irq", NULL)) mmc->caps |= MMC_CAP_SDIO_IRQ; + if (of_find_property(host->dev->of_node, "poll-hw-reset", NULL)) + mmc->caps |= MMC_CAP_HW_RESET; if (of_find_property(host->dev->of_node, "full-pwr-cycle", NULL)) mmc->caps2 |= MMC_CAP2_FULL_PWR_CYCLE; if (of_find_property(host->dev->of_node, "keep-power-in-suspend", NULL)) -- 2.34.1