From: Ohad Ben-Cohen <ohad@wizery.com>
Date: Tue, 5 Apr 2011 15:02:26 +0000 (+0300)
Subject: mmc: quirks: wl1271 is MMC_QUIRK_DISABLE_CD
X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=14e7dc76f24577694f1c121e6ce1fd2f3d46c726;p=GitHub%2Fexynos8895%2Fandroid_kernel_samsung_universal8895.git

mmc: quirks: wl1271 is MMC_QUIRK_DISABLE_CD

The wl12xx device supports disconnecting the pull-up resistor on
CD/DAT[3] (pin 1) of the card.

Tell SDIO core to disconnect that resistor during card init,
since we don't need it at that point (and anyway all
hosts shall provide pull-up resistors on all data lines DAT[3:0]
as described in section 6 of the SD physical specification).

As a result, this may save some power, but it's also generally healthy
since it prevents both ends from pulling up that pin, which
results in undesirable asymmetric physical bus.

Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
---

diff --git a/drivers/mmc/core/quirks.c b/drivers/mmc/core/quirks.c
index 19573981d934..a4c42edc6cb3 100644
--- a/drivers/mmc/core/quirks.c
+++ b/drivers/mmc/core/quirks.c
@@ -66,6 +66,8 @@ static const struct mmc_fixup mmc_fixup_methods[] = {
 		remove_quirk, MMC_QUIRK_BROKEN_CLK_GATING },
 	{ SDIO_VENDOR_ID_TI, SDIO_DEVICE_ID_TI_WL1271,
 		add_quirk, MMC_QUIRK_NONSTD_FUNC_IF },
+	{ SDIO_VENDOR_ID_TI, SDIO_DEVICE_ID_TI_WL1271,
+		add_quirk, MMC_QUIRK_DISABLE_CD },
 	{ 0 }
 };