|
@@ -2107,6 +2107,7 @@ void mmc_rescan(struct work_struct *work)
|
|
|
void mmc_start_host(struct mmc_host *host)
|
|
|
{
|
|
|
host->f_init = max(freqs[0], host->f_min);
|
|
|
+ host->rescan_disable = 0;
|
|
|
mmc_power_up(host);
|
|
|
mmc_detect_change(host, 0);
|
|
|
}
|
|
@@ -2120,6 +2121,7 @@ void mmc_stop_host(struct mmc_host *host)
|
|
|
spin_unlock_irqrestore(&host->lock, flags);
|
|
|
#endif
|
|
|
|
|
|
+ host->rescan_disable = 1;
|
|
|
cancel_delayed_work_sync(&host->detect);
|
|
|
mmc_flush_scheduled_work();
|
|
|
|