mmc: rtsx_pci: Use the provided busy timeout from the mmc core
The rtsx_pci driver is using a fixed 3s timeout for R1B responses, which in some cases isn't suffient. For example, erase/discard requests may require longer timeouts. Instead of always using a fixed timeout, let's use the per request calculated busy timeout from the mmc core. Cc: Micky Ching <micky_ching@realsil.com.cn> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Tested-by: Mauro Santos <registo.mailling@gmail.com>
This commit is contained in:
parent
fa243f645a
commit
27f4bf7d74
|
@ -244,7 +244,7 @@ static void sd_send_cmd_get_rsp(struct realtek_pci_sdmmc *host,
|
||||||
stat_idx = sd_status_index(rsp_type);
|
stat_idx = sd_status_index(rsp_type);
|
||||||
|
|
||||||
if (rsp_type == SD_RSP_TYPE_R1b)
|
if (rsp_type == SD_RSP_TYPE_R1b)
|
||||||
timeout = 3000;
|
timeout = cmd->busy_timeout ? cmd->busy_timeout : 3000;
|
||||||
|
|
||||||
if (cmd->opcode == SD_SWITCH_VOLTAGE) {
|
if (cmd->opcode == SD_SWITCH_VOLTAGE) {
|
||||||
err = rtsx_pci_write_register(pcr, SD_BUS_STAT,
|
err = rtsx_pci_write_register(pcr, SD_BUS_STAT,
|
||||||
|
|
Loading…
Reference in New Issue