소스 검색

mmc: core: improve the quirks for sdio devices

Rename mmc_fixup_methods to sdio_fixup_methods to better
reflect that it's for sdio devices. So we could also pass
on it from sdio card's probe sequence just like what we do
for eMMC and block there.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Shawn Lin 8 년 전
부모
커밋
1144c1e4dd
2개의 변경된 파일2개의 추가작업 그리고 6개의 파일을 삭제
  1. 1 5
      drivers/mmc/core/quirks.h
  2. 1 1
      drivers/mmc/core/sdio.c

+ 1 - 5
drivers/mmc/core/quirks.h

@@ -13,7 +13,7 @@
 
 
 #include "card.h"
 #include "card.h"
 
 
-static const struct mmc_fixup mmc_fixup_methods[] = {
+static const struct mmc_fixup sdio_fixup_methods[] = {
 	SDIO_FIXUP(SDIO_VENDOR_ID_TI, SDIO_DEVICE_ID_TI_WL1271,
 	SDIO_FIXUP(SDIO_VENDOR_ID_TI, SDIO_DEVICE_ID_TI_WL1271,
 		   add_quirk, MMC_QUIRK_NONSTD_FUNC_IF),
 		   add_quirk, MMC_QUIRK_NONSTD_FUNC_IF),
 
 
@@ -35,10 +35,6 @@ static inline void mmc_fixup_device(struct mmc_card *card,
 	const struct mmc_fixup *f;
 	const struct mmc_fixup *f;
 	u64 rev = cid_rev_card(card);
 	u64 rev = cid_rev_card(card);
 
 
-	/* Non-core specific workarounds. */
-	if (!table)
-		table = mmc_fixup_methods;
-
 	for (f = table; f->vendor_fixup; f++) {
 	for (f = table; f->vendor_fixup; f++) {
 		if ((f->manfid == CID_MANFID_ANY ||
 		if ((f->manfid == CID_MANFID_ANY ||
 		     f->manfid == card->cid.manfid) &&
 		     f->manfid == card->cid.manfid) &&

+ 1 - 1
drivers/mmc/core/sdio.c

@@ -739,7 +739,7 @@ try_again:
 		card = oldcard;
 		card = oldcard;
 	}
 	}
 	card->ocr = ocr_card;
 	card->ocr = ocr_card;
-	mmc_fixup_device(card, NULL);
+	mmc_fixup_device(card, sdio_fixup_methods);
 
 
 	if (card->type == MMC_TYPE_SD_COMBO) {
 	if (card->type == MMC_TYPE_SD_COMBO) {
 		err = mmc_sd_setup_card(host, card, oldcard != NULL);
 		err = mmc_sd_setup_card(host, card, oldcard != NULL);