diff mbox

[3/3] mmc: remove anti clock gating quirk for wl1271

Message ID cb471b35d320b96a9d143103fd9e9b76f8998470.1294588491.git.tardyp@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Pierre Tardy Jan. 9, 2011, 4:26 p.m. UTC
None
diff mbox

Patch

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 }
 };