[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <cb471b35d320b96a9d143103fd9e9b76f8998470.1294588491.git.tardyp@gmail.com>
Date: Sun, 9 Jan 2011 17:26:20 +0100
From: Pierre Tardy <tardyp@...il.com>
To: linux-mmc@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: Pierre Tardy <pierre.tardy@...el.com>
Subject: [PATCH 3/3] mmc: remove anti clock gating quirk for wl1271
From: Pierre Tardy <pierre.tardy@...el.com>
Signed-off-by: Pierre Tardy <pierre.tardy@...el.com>
---
drivers/mmc/core/quirks.c | 18 ++++++++++++++++++
1 files changed, 18 insertions(+), 0 deletions(-)
diff --git a/drivers/mmc/core/quirks.c b/drivers/mmc/core/quirks.c
index fe467c8..506e4fc 100644
--- a/drivers/mmc/core/quirks.c
+++ b/drivers/mmc/core/quirks.c
@@ -33,6 +33,14 @@ static void add_quirk(struct mmc_card *card, int data)
}
/*
+ * This hook just removes a quirk unconditionnally
+ */
+static void remove_quirk_hook(struct mmc_card *card, int data)
+{
+ card->quirks &= ~data;
+}
+
+/*
* This hook just adds a quirk for all sdio devices
*/
static void add_quirk_for_sdio_devices(struct mmc_card *card, int data)
@@ -41,9 +49,19 @@ static void add_quirk_for_sdio_devices(struct mmc_card *card, int data)
card->quirks |= data;
}
+#ifndef SDIO_VENDOR_ID_TI
+#define SDIO_VENDOR_ID_TI 0x0097
+#endif
+
+#ifndef SDIO_DEVICE_ID_TI_WL1271
+#define SDIO_DEVICE_ID_TI_WL1271 0x4076
+#endif
+
static const struct mmc_fixup mmc_fixup_methods[] = {
{ SDIO_ANY_ID, SDIO_ANY_ID,
add_quirk_for_sdio_devices, MMC_QUIRK_BROKEN_CLK_GATING }
+ { SDIO_VENDOR_ID_TI, SDIO_DEVICE_ID_TI_WL1271,
+ remove_quirk_hook, MMC_QUIRK_BROKEN_CLK_GATING },
{ 0 }
};
--
1.7.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists