summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorAsutosh Das <asutoshd@codeaurora.org>2013-04-24 15:22:05 +0530
committerSubhash Jadavani <subhashj@codeaurora.org>2016-05-31 15:25:53 -0700
commit9c0c486493bb059e1de4dbd5b1c93c98ee8c9001 (patch)
treebbe920f3b8c2dea22abc6292c6041a85c1e88ffd /drivers
parentd3b98e3a117bca3e400f4bf20c9c6c1a2eac553b (diff)
mmc: quirks: enable clock gating for AR6004 card
This patch whitelists the AR6004 card for clock-gating. The controller supports asynchronous interrupt functionality which enables to receive interrupts from the card when clocks are off. Hence, clocks can be turned off when idle. This patch whitelists the card, to let the clock-gating framework gate the clock during idle time. Change-Id: I651f86e42595cc82f99093c06ee220a1d0ec95a9 Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mmc/core/quirks.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/mmc/core/quirks.c b/drivers/mmc/core/quirks.c
index 2a2704d9731b..562957a37704 100644
--- a/drivers/mmc/core/quirks.c
+++ b/drivers/mmc/core/quirks.c
@@ -55,6 +55,14 @@
#define SDIO_DEVICE_ID_MSM_QCA_AR6003_2 0x301
#endif
+#ifndef SDIO_DEVICE_ID_MSM_QCA_AR6004_1
+#define SDIO_DEVICE_ID_MSM_QCA_AR6004_1 0x400
+#endif
+
+#ifndef SDIO_DEVICE_ID_MSM_QCA_AR6004_2
+#define SDIO_DEVICE_ID_MSM_QCA_AR6004_2 0x401
+#endif
+
/*
* This hook just adds a quirk for all sdio devices
*/
@@ -83,6 +91,12 @@ static const struct mmc_fixup mmc_fixup_methods[] = {
SDIO_FIXUP(SDIO_VENDOR_ID_MSM_QCA, SDIO_DEVICE_ID_MSM_QCA_AR6003_2,
remove_quirk, MMC_QUIRK_BROKEN_CLK_GATING),
+ SDIO_FIXUP(SDIO_VENDOR_ID_MSM_QCA, SDIO_DEVICE_ID_MSM_QCA_AR6004_1,
+ remove_quirk, MMC_QUIRK_BROKEN_CLK_GATING),
+
+ SDIO_FIXUP(SDIO_VENDOR_ID_MSM_QCA, SDIO_DEVICE_ID_MSM_QCA_AR6004_2,
+ remove_quirk, MMC_QUIRK_BROKEN_CLK_GATING),
+
SDIO_FIXUP(SDIO_VENDOR_ID_TI, SDIO_DEVICE_ID_TI_WL1271,
add_quirk, MMC_QUIRK_NONSTD_FUNC_IF),