ath6kl: Workaround to support Deep Sleep with MSM.
Set the host pm flag MMC_PM_WAKE_SDIO_IRQ to allow host to disable the sdc2_clk and sdc2_h_clk,so that the MSM device enter into TCXO shutdown. Signed-off-by: Santosh Sajjan <ssajjan@codeaurora.org> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
This commit is contained in:
Родитель
3c411a4344
Коммит
cca4d5adcf
|
@ -856,6 +856,19 @@ static int ath6kl_sdio_suspend(struct ath6kl *ar, struct cfg80211_wowlan *wow)
|
||||||
if (ret)
|
if (ret)
|
||||||
goto cut_pwr;
|
goto cut_pwr;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Workaround to support Deep Sleep with MSM, set the host pm
|
||||||
|
* flag as MMC_PM_WAKE_SDIO_IRQ to allow SDCC deiver to disable
|
||||||
|
* the sdc2_clock and internally allows MSM to enter
|
||||||
|
* TCXO shutdown properly.
|
||||||
|
*/
|
||||||
|
if ((flags & MMC_PM_WAKE_SDIO_IRQ)) {
|
||||||
|
ret = sdio_set_host_pm_flags(func,
|
||||||
|
MMC_PM_WAKE_SDIO_IRQ);
|
||||||
|
if (ret)
|
||||||
|
goto cut_pwr;
|
||||||
|
}
|
||||||
|
|
||||||
ret = ath6kl_cfg80211_suspend(ar, ATH6KL_CFG_SUSPEND_DEEPSLEEP,
|
ret = ath6kl_cfg80211_suspend(ar, ATH6KL_CFG_SUSPEND_DEEPSLEEP,
|
||||||
NULL);
|
NULL);
|
||||||
if (ret)
|
if (ret)
|
||||||
|
|
Загрузка…
Ссылка в новой задаче