At the successful conclusion of sdhci_pci_probe(), if runtime pm was
allowed, the device would be runtime suspended.  That wastes a lot of time
during initialization.  Instead leave the device active until the mmc core
scans for a card.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
 
 static void sdhci_pci_runtime_pm_allow(struct device *dev)
 {
-       pm_runtime_put_noidle(dev);
-       pm_runtime_allow(dev);
+       pm_suspend_ignore_children(dev, 1);
        pm_runtime_set_autosuspend_delay(dev, 50);
        pm_runtime_use_autosuspend(dev);
-       pm_suspend_ignore_children(dev, 1);
+       pm_runtime_allow(dev);
+       /* Stay active until mmc core scans for a card */
+       pm_runtime_put_noidle(dev);
 }
 
 static void sdhci_pci_runtime_pm_forbid(struct device *dev)