mmc: core: Workaround to fix a hardware bug in Qualcomm-SDIO client on MDM
Qualcomm-SDIO client on MDM contains NULL tuple for all SDIO functions 1 to 7 and doesn't contain any valid data. This patch is a temporary software workaround (not to read CIS if it is NULL tuple) until the hardware bug is resolved. The device ID 0x23F0 is for the SDIO client core on MDM8220. The device ID 0x23F1 is used for msm8660_charm. Change-Id: I82f44d313b3d499462977a0a9bbc0759f489ae95 Signed-off-by: Maya Erez <merez@codeaurora.org> Signed-off-by: Murali Palnati <palnatim@codeaurora.org> Signed-off-by: Raj Kushwaha <rajk@codeaurora.org> [sboyd: Squash in two other device id patches] Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
This commit is contained in:
parent
6b2e9c4ce0
commit
81e08fb2ca
1 changed files with 10 additions and 2 deletions
|
@ -270,8 +270,16 @@ static int sdio_read_cis(struct mmc_card *card, struct sdio_func *func)
|
|||
break;
|
||||
|
||||
/* null entries have no link field or data */
|
||||
if (tpl_code == 0x00)
|
||||
continue;
|
||||
if (tpl_code == 0x00) {
|
||||
if (card->cis.vendor == 0x70 &&
|
||||
(card->cis.device == 0x2460 ||
|
||||
card->cis.device == 0x0460 ||
|
||||
card->cis.device == 0x23F1 ||
|
||||
card->cis.device == 0x23F0))
|
||||
break;
|
||||
else
|
||||
continue;
|
||||
}
|
||||
|
||||
ret = mmc_io_rw_direct(card, 0, 0, ptr++, 0, &tpl_link);
|
||||
if (ret)
|
||||
|
|
Loading…
Add table
Reference in a new issue