Commit 06b2233a authored by Jaehoon Chung's avatar Jaehoon Chung Committed by Chris Ball

mmc: core: duplicated trial with same freq in mmc_rescan_try_freq()

mmc_rescan_try_freq() tries to init two times with the last frequency.
For example, if host->f_min is 400KHz, we see the message below:

mmc1: mmc_rescan_try_freq: trying to init card at 400000 Hz
mmc1: mmc_rescan_try_freq: trying to init card at 400000 Hz

Andy Ross says that he didn't try this code on a board with an f_min
that exactly matches one of the table entries, which explains why the
bug wasn't detected.
Signed-off-by: default avatarJaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: default avatarKyungmin Park <kyungmin.park@samsung.com>
Cc: Andy Ross <andy.ross@windriver.com>
Signed-off-by: default avatarChris Ball <cjb@laptop.org>
parent 4c4cb171
...@@ -1608,7 +1608,7 @@ void mmc_rescan(struct work_struct *work) ...@@ -1608,7 +1608,7 @@ void mmc_rescan(struct work_struct *work)
for (i = 0; i < ARRAY_SIZE(freqs); i++) { for (i = 0; i < ARRAY_SIZE(freqs); i++) {
if (!mmc_rescan_try_freq(host, max(freqs[i], host->f_min))) if (!mmc_rescan_try_freq(host, max(freqs[i], host->f_min)))
break; break;
if (freqs[i] < host->f_min) if (freqs[i] <= host->f_min)
break; break;
} }
mmc_release_host(host); mmc_release_host(host);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment