Commit a08b17be8b984a7c51cd5a480cd977363df353f9

Authored by Adrian Hunter
Committed by Chris Ball
1 parent e48fc15aa2

mmc: core: fix init controller performance regression, updated patch

Add MMC_CAP2_NO_PRESCAN_POWERUP to sdhci-pci.c also, use mmc_power_off()
for MMC_CAP2_NO_PRESCAN_POWERUP.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
[cjb: previously applied v1 of this patch instead of v4]
Signed-off-by: Chris Ball <cjb@laptop.org>

Showing 2 changed files with 4 additions and 1 deletions Side-by-side Diff

drivers/mmc/core/core.c
... ... @@ -2416,7 +2416,9 @@
2416 2416 {
2417 2417 host->f_init = max(freqs[0], host->f_min);
2418 2418 host->rescan_disable = 0;
2419   - if (!(host->caps2 & MMC_CAP2_NO_PRESCAN_POWERUP))
  2419 + if (host->caps2 & MMC_CAP2_NO_PRESCAN_POWERUP)
  2420 + mmc_power_off(host);
  2421 + else
2420 2422 mmc_power_up(host);
2421 2423 mmc_detect_change(host, 0);
2422 2424 }
drivers/mmc/host/sdhci-pci.c
... ... @@ -1280,6 +1280,7 @@
1280 1280  
1281 1281 host->mmc->pm_caps = MMC_PM_KEEP_POWER | MMC_PM_WAKE_SDIO_IRQ;
1282 1282 host->mmc->slotno = slotno;
  1283 + host->mmc->caps2 |= MMC_CAP2_NO_PRESCAN_POWERUP;
1283 1284  
1284 1285 ret = sdhci_add_host(host);
1285 1286 if (ret)