From: Sujith Reddy Thumma <sthumma@xxxxxxxxxxxxxx> Qualcomm SDCC controller supports minimum SD clock frequency which is required for card initialization. This information is exported through platform data for each SDCC controller. There is no need of retrying higher frequencies than the minimum supported by controller for Qualcomm chipsets which inturn add delay in detection process if there is no card during suspend/resume cycles. Hence, skip multiple frequency retries. Signed-off-by: Sujith Reddy Thumma <sthumma@xxxxxxxxxxxxxx> Signed-off-by: Subhash Jadavani <subhashj@xxxxxxxxxxxxxx> Signed-off-by: Xiaonian Wang <xiaonian@xxxxxxxxxxxxxx> Signed-off-by: Bao D. Nguyen <nguyenb@xxxxxxxxxxxxxx> --- drivers/mmc/core/core.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c index 1e37f78..38b0cec 100644 --- a/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c @@ -2281,7 +2281,6 @@ void mmc_rescan(struct work_struct *work) { struct mmc_host *host = container_of(work, struct mmc_host, detect.work); - int i; if (host->rescan_disable) return; @@ -2332,13 +2331,7 @@ void mmc_rescan(struct work_struct *work) mmc_release_host(host); goto out; } - - for (i = 0; i < ARRAY_SIZE(freqs); i++) { - if (!mmc_rescan_try_freq(host, max(freqs[i], host->f_min))) - break; - if (freqs[i] <= host->f_min) - break; - } + mmc_rescan_try_freq(host, host->f_min); mmc_release_host(host); out: -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project