On Wed, Jan 5, 2011 at 12:09 AM, David Vrabel <david.vrabel@xxxxxxx> wrote: > How are you intending to use this? diff --git a/arch/arm/mach-omap2/board-zoom-peripherals.c b/arch/arm/mach-omap2/board-zoom-peripherals.c index 9db9203..ae69ba9 100644 --- a/arch/arm/mach-omap2/board-zoom-peripherals.c +++ b/arch/arm/mach-omap2/board-zoom-peripherals.c @@ -19,6 +19,7 @@ #include <linux/regulator/fixed.h> #include <linux/wl12xx.h> #include <linux/mmc/host.h> +#include <linux/mmc/card.h> #include <asm/mach-types.h> #include <asm/mach/arch.h> @@ -196,6 +197,18 @@ struct wl12xx_platform_data omap_zoom_wlan_data __initdata = { .board_ref_clock = 1, }; +static void zoom_wl1271_init_card(struct mmc_card *card) +{ + /* + * Tell SDIO core to disconnect the pull-up resistor on CD/DAT[3] + * (pin 1) of the wl1271 card, which is not required since we + * already have OMAP pulling up this line, and we don't need any + * card detection functionality. As a result, this may save some + * power. + */ + card->quirks |= MMC_QUIRK_DISABLE_CD; +} + static struct omap2_hsmmc_info mmc[] __initdata = { { .name = "external", @@ -220,6 +233,7 @@ static struct omap2_hsmmc_info mmc[] __initdata = { .gpio_wp = -EINVAL, .gpio_cd = -EINVAL, .nonremovable = true, + .init_card = zoom_wl1271_init_card, }, {} /* Terminator */ }; > Whether this pull up should be > enabled or disabled is determined by the board (not the card). The > pull-up should be disabled if the board has a pull-up external to the > card, otherwise it must remain enabled. Agree. -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html