diff options
-rw-r--r-- | drivers/mmc/core/sdio.c | 2 | ||||
-rw-r--r-- | include/linux/mmc/card.h | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/drivers/mmc/core/sdio.c b/drivers/mmc/core/sdio.c index c3c2bd0874e8..a5840c0de2e4 100644 --- a/drivers/mmc/core/sdio.c +++ b/drivers/mmc/core/sdio.c | |||
@@ -187,7 +187,7 @@ static int sdio_disable_cd(struct mmc_card *card) | |||
187 | int ret; | 187 | int ret; |
188 | u8 ctrl; | 188 | u8 ctrl; |
189 | 189 | ||
190 | if (!card->cccr.disable_cd) | 190 | if (!mmc_card_disable_cd(card)) |
191 | return 0; | 191 | return 0; |
192 | 192 | ||
193 | ret = mmc_io_rw_direct(card, 0, 0, SDIO_CCCR_IF, 0, &ctrl); | 193 | ret = mmc_io_rw_direct(card, 0, 0, SDIO_CCCR_IF, 0, &ctrl); |
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h index 317a0029e7d7..2a7e54970c93 100644 --- a/include/linux/mmc/card.h +++ b/include/linux/mmc/card.h | |||
@@ -129,6 +129,7 @@ struct mmc_card { | |||
129 | /* (missing CIA registers) */ | 129 | /* (missing CIA registers) */ |
130 | #define MMC_QUIRK_BROKEN_CLK_GATING (1<<3) /* clock gating the sdio bus will make card fail */ | 130 | #define MMC_QUIRK_BROKEN_CLK_GATING (1<<3) /* clock gating the sdio bus will make card fail */ |
131 | #define MMC_QUIRK_NONSTD_FUNC_IF (1<<4) /* SDIO card has nonstd function interfaces */ | 131 | #define MMC_QUIRK_NONSTD_FUNC_IF (1<<4) /* SDIO card has nonstd function interfaces */ |
132 | #define MMC_QUIRK_DISABLE_CD (1<<5) /* disconnect CD/DAT[3] resistor */ | ||
132 | 133 | ||
133 | unsigned int erase_size; /* erase size in sectors */ | 134 | unsigned int erase_size; /* erase size in sectors */ |
134 | unsigned int erase_shift; /* if erase unit is power 2 */ | 135 | unsigned int erase_shift; /* if erase unit is power 2 */ |
@@ -184,6 +185,11 @@ static inline int mmc_blksz_for_byte_mode(const struct mmc_card *c) | |||
184 | return c->quirks & MMC_QUIRK_BLKSZ_FOR_BYTE_MODE; | 185 | return c->quirks & MMC_QUIRK_BLKSZ_FOR_BYTE_MODE; |
185 | } | 186 | } |
186 | 187 | ||
188 | static inline int mmc_card_disable_cd(const struct mmc_card *c) | ||
189 | { | ||
190 | return c->quirks & MMC_QUIRK_DISABLE_CD; | ||
191 | } | ||
192 | |||
187 | static inline int mmc_card_nonstd_func_interface(const struct mmc_card *c) | 193 | static inline int mmc_card_nonstd_func_interface(const struct mmc_card *c) |
188 | { | 194 | { |
189 | return c->quirks & MMC_QUIRK_NONSTD_FUNC_IF; | 195 | return c->quirks & MMC_QUIRK_NONSTD_FUNC_IF; |