For longer erase operations in future, the core may want to increase the busy_timeout value beyond 100ms. Drivers should respect that and only enforce a minimum timeout duration, but not a maximum one.
This is not a full solution, because some drivers/hardwares indeed have a maximum duration they can wait, but that should probably be solved via a max_busy_timeout attribute for MMC hosts like Linux does. Signed-off-by: Ahmad Fatoum <a.fat...@pengutronix.de> --- drivers/mci/mci-bcm2835.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mci/mci-bcm2835.c b/drivers/mci/mci-bcm2835.c index 0099e4e35753..aad5ae0d9e1d 100644 --- a/drivers/mci/mci-bcm2835.c +++ b/drivers/mci/mci-bcm2835.c @@ -129,7 +129,7 @@ static int bcm2835_mci_request(struct mci_host *mci, struct mci_cmd *cmd, } /* BCM2xxx SDHCI might take up to 100ms to complete a command */ - cmd->busy_timeout = 100; + cmd->busy_timeout = max(cmd->busy_timeout, 100U); ret = sdhci_wait_idle_data(&host->sdhci, cmd); if (ret) -- 2.39.5