mmc: quirks: wl1271 is MMC_QUIRK_DISABLE_CD
authorOhad Ben-Cohen <ohad@wizery.com>
Tue, 5 Apr 2011 15:02:26 +0000 (18:02 +0300)
committerChris Ball <cjb@laptop.org>
Wed, 25 May 2011 01:00:05 +0000 (21:00 -0400)
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>
drivers/mmc/core/quirks.c

index 1957398..a4c42ed 100644 (file)
@@ -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 }
 };