Loading drivers/mmc/core/host.c +7 −2 Original line number Diff line number Diff line Loading @@ -190,8 +190,13 @@ bool mmc_host_may_gate_card(struct mmc_card *card) * SDIO3.0 card allows the clock to be gated off so check if * that is the case or not. */ if (mmc_card_sdio(card) && card->cccr.async_intr_sup) if (mmc_card_sdio(card) && card->cccr.async_intr_sup) { if (mmc_enable_qca6574_settings(card) || mmc_enable_qca9377_settings(card)) return false; else return true; } /* * Don't gate SDIO cards! These need to be clocked at all times Loading drivers/mmc/host/sdhci-msm.c +13 −0 Original line number Diff line number Diff line Loading @@ -4324,6 +4324,12 @@ static int sdhci_msm_runtime_suspend(struct device *dev) ktime_t start = ktime_get(); int ret; if (host->mmc->card && mmc_card_sdio(host->mmc->card)) { if (mmc_enable_qca6574_settings(host->mmc->card) || mmc_enable_qca9377_settings(host->mmc->card)) return 0; } disable_irq(host->irq); disable_irq(msm_host->pwr_irq); Loading Loading @@ -4356,6 +4362,13 @@ static int sdhci_msm_runtime_resume(struct device *dev) ktime_t start = ktime_get(); int ret; if (host->mmc->card && mmc_card_sdio(host->mmc->card)) { if (mmc_enable_qca6574_settings(host->mmc->card) || mmc_enable_qca9377_settings(host->mmc->card)) return 0; } if (host->is_crypto_en) { ret = sdhci_msm_enable_controller_clock(host); if (ret) { Loading Loading
drivers/mmc/core/host.c +7 −2 Original line number Diff line number Diff line Loading @@ -190,8 +190,13 @@ bool mmc_host_may_gate_card(struct mmc_card *card) * SDIO3.0 card allows the clock to be gated off so check if * that is the case or not. */ if (mmc_card_sdio(card) && card->cccr.async_intr_sup) if (mmc_card_sdio(card) && card->cccr.async_intr_sup) { if (mmc_enable_qca6574_settings(card) || mmc_enable_qca9377_settings(card)) return false; else return true; } /* * Don't gate SDIO cards! These need to be clocked at all times Loading
drivers/mmc/host/sdhci-msm.c +13 −0 Original line number Diff line number Diff line Loading @@ -4324,6 +4324,12 @@ static int sdhci_msm_runtime_suspend(struct device *dev) ktime_t start = ktime_get(); int ret; if (host->mmc->card && mmc_card_sdio(host->mmc->card)) { if (mmc_enable_qca6574_settings(host->mmc->card) || mmc_enable_qca9377_settings(host->mmc->card)) return 0; } disable_irq(host->irq); disable_irq(msm_host->pwr_irq); Loading Loading @@ -4356,6 +4362,13 @@ static int sdhci_msm_runtime_resume(struct device *dev) ktime_t start = ktime_get(); int ret; if (host->mmc->card && mmc_card_sdio(host->mmc->card)) { if (mmc_enable_qca6574_settings(host->mmc->card) || mmc_enable_qca9377_settings(host->mmc->card)) return 0; } if (host->is_crypto_en) { ret = sdhci_msm_enable_controller_clock(host); if (ret) { Loading