mmc: core: Remove BROKEN_CLK_GATING quirk for WCN1314 cards

MMC_CLKGATE feature can be enabled for Volans cards as
the host supports asynchronous acitivity notification
when the clocks are off.

Change-Id: Ic6cfa7fb2e713dcf1d2c6b2ae9df9cf0394f8c4a
Signed-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>
[merez@codeaurora.org: fix trivial conflicts]
Signed-off-by: Maya Erez <merez@codeaurora.org>
This commit is contained in:
Sujit Reddy Thumma 2014-12-03 18:13:58 +02:00 committed by Subhash Jadavani
parent 6e40d14408
commit e3b5cec789
2 changed files with 14 additions and 1 deletions

View file

@ -1115,6 +1115,8 @@ void mmc_gate_clock(struct mmc_host *host)
{
unsigned long flags;
WARN_ON(!host->ios.clock);
spin_lock_irqsave(&host->clk_lock, flags);
host->clk_old = host->ios.clock;
host->ios.clock = 0;
@ -1137,7 +1139,7 @@ void mmc_ungate_clock(struct mmc_host *host)
* we just ignore the call.
*/
if (host->clk_old) {
BUG_ON(host->ios.clock);
WARN_ON(host->ios.clock);
/* This call will also set host->clk_gated to false */
__mmc_set_clock(host, host->clk_old);
}

View file

@ -35,6 +35,14 @@
#define SDIO_DEVICE_ID_MARVELL_8797_F0 0x9128
#endif
#ifndef SDIO_VENDOR_ID_MSM
#define SDIO_VENDOR_ID_MSM 0x0070
#endif
#ifndef SDIO_DEVICE_ID_MSM_WCN1314
#define SDIO_DEVICE_ID_MSM_WCN1314 0x2881
#endif
/*
* This hook just adds a quirk for all sdio devices
*/
@ -54,6 +62,9 @@ static const struct mmc_fixup mmc_fixup_methods[] = {
SDIO_FIXUP(SDIO_VENDOR_ID_TI, SDIO_DEVICE_ID_TI_WL1271,
remove_quirk, MMC_QUIRK_BROKEN_CLK_GATING),
SDIO_FIXUP(SDIO_VENDOR_ID_MSM, SDIO_DEVICE_ID_MSM_WCN1314,
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),