diff --git a/drivers/mmc/host/sdhci-msm.c b/drivers/mmc/host/sdhci-msm.c index 74819301e56a..92db9f914a6c 100644 --- a/drivers/mmc/host/sdhci-msm.c +++ b/drivers/mmc/host/sdhci-msm.c @@ -2156,7 +2156,8 @@ static void sdhci_msm_handle_pwr_irq(struct sdhci_host *host, int irq) io_level = REQ_IO_HIGH; } if (irq_status & CORE_PWRCTL_BUS_OFF) { - if (msm_host->pltfm_init_done) + if (!(host->mmc->caps & MMC_CAP_NONREMOVABLE) || + msm_host->pltfm_init_done) ret = sdhci_msm_setup_vreg(msm_host, false, false); if (!ret)