Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f358fbe9 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "mmc: sdhci-msm: disable runtime pm and clock gating for SDIO"

parents c32ba25b 759947b4
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -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
+13 −0
Original line number Diff line number Diff line
@@ -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);

@@ -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) {