mmc: mvsdio: Respect card busy time out from mmc core
Instead of using a hardcoded timeout of 5 * HZ jiffies, let's respect the command busy timeout provided by the mmc core. This make the used timeout more reliable. Cc: Damien Thebault <damien.thebault@vitec.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Tested-by: Damien Thebault <damien.thebault@vitec.com>
This commit is contained in:
parent
4ba9bf98b8
commit
0ef89ec24e
|
@ -143,6 +143,7 @@ static void mvsd_request(struct mmc_host *mmc, struct mmc_request *mrq)
|
|||
struct mmc_command *cmd = mrq->cmd;
|
||||
u32 cmdreg = 0, xfer = 0, intr = 0;
|
||||
unsigned long flags;
|
||||
unsigned int timeout;
|
||||
|
||||
BUG_ON(host->mrq != NULL);
|
||||
host->mrq = mrq;
|
||||
|
@ -234,7 +235,8 @@ static void mvsd_request(struct mmc_host *mmc, struct mmc_request *mrq)
|
|||
mvsd_write(MVSD_NOR_INTR_EN, host->intr_en);
|
||||
mvsd_write(MVSD_ERR_INTR_EN, 0xffff);
|
||||
|
||||
mod_timer(&host->timer, jiffies + 5 * HZ);
|
||||
timeout = cmd->busy_timeout ? cmd->busy_timeout : 5000;
|
||||
mod_timer(&host->timer, jiffies + msecs_to_jiffies(timeout));
|
||||
|
||||
spin_unlock_irqrestore(&host->lock, flags);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user