[PATCH] mmc: sdhci: Apply FSL ESDHC reset handling quirk to OF
Martin Hicks
mort at bork.org
Thu Jan 29 06:52:36 AEDT 2015
The reset code was pushed into the esdhc-imx driver, but missed being
pushed into the FSL OF driver at the same time. The commit that broke
the OF ESDHC driver was 0718e59ae259f7c48155b4e852d8b0632d59028e
Signed-off-by: Martin Hicks <mort at bork.org>
---
drivers/mmc/host/sdhci-of-esdhc.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/drivers/mmc/host/sdhci-of-esdhc.c b/drivers/mmc/host/sdhci-of-esdhc.c
index 8872c85..4a654d4 100644
--- a/drivers/mmc/host/sdhci-of-esdhc.c
+++ b/drivers/mmc/host/sdhci-of-esdhc.c
@@ -276,6 +276,14 @@ static void esdhc_pltfm_set_bus_width(struct sdhci_host *host, int width)
ESDHC_CTRL_BUSWIDTH_MASK, ctrl);
}
+static void esdhc_reset(struct sdhci_host *host, u8 mask)
+{
+ sdhci_reset(host, mask);
+
+ sdhci_writel(host, host->ier, SDHCI_INT_ENABLE);
+ sdhci_writel(host, host->ier, SDHCI_SIGNAL_ENABLE);
+}
+
static const struct sdhci_ops sdhci_esdhc_ops = {
.read_l = esdhc_readl,
.read_w = esdhc_readw,
@@ -290,7 +298,7 @@ static const struct sdhci_ops sdhci_esdhc_ops = {
.platform_init = esdhc_of_platform_init,
.adma_workaround = esdhci_of_adma_workaround,
.set_bus_width = esdhc_pltfm_set_bus_width,
- .reset = sdhci_reset,
+ .reset = esdhc_reset,
.set_uhs_signaling = sdhci_set_uhs_signaling,
};
--
1.7.10.4
--
Martin Hicks P.Eng. | mort at bork.org
Bork Consulting Inc. | +1 (613) 266-2296
More information about the Linuxppc-dev
mailing list