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

Commit 759947b4 authored by Pavan Anamula's avatar Pavan Anamula
Browse files

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



Disable power management features for SDIO as the current code is
not ready to enable it.

Change-Id: I234ebf6cc46d2a3b70bf9ba3f94b4b1abc1acd44
Signed-off-by: default avatarPavan Anamula <pavana@codeaurora.org>
parent af510f99
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
@@ -4295,6 +4295,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);

@@ -4327,6 +4333,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) {