soc: swr-mstr: Fix headset detection after pdr

Sometimes, headset is not detected after pdr during music playback.
This is because enable_irq does not get called as master remains
in suspend state. Decrease auto suspend timer to 1 to fix the issue.

Change-Id: I8cea3e74487977af801dccac7e4f873831c26264
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
This commit is contained in:
Vatsal Bucha 2019-08-12 11:56:55 +05:30
parent 49ac33f0a1
commit 63b193fcd0

View file

@ -2453,8 +2453,14 @@ static int swrm_runtime_resume(struct device *dev)
SWR_WAKE_IRQ_DEREGISTER, (void *)swrm);
}
if (swrm_clk_request(swrm, true))
if (swrm_clk_request(swrm, true)) {
/*
* Set autosuspend timer to 1 for
* master to enter into suspend.
*/
auto_suspend_timer = 1;
goto exit;
}
if (!swrm->clk_stop_mode0_supp || swrm->state == SWR_MSTR_SSR) {
list_for_each_entry(swr_dev, &mstr->devices, dev_list) {
ret = swr_device_up(swr_dev);
@ -2494,6 +2500,7 @@ static int swrm_runtime_resume(struct device *dev)
if (!hw_core_err)
swrm_request_hw_vote(swrm, LPASS_HW_CORE, false);
pm_runtime_set_autosuspend_delay(&pdev->dev, auto_suspend_timer);
auto_suspend_timer = SWR_AUTO_SUSPEND_DELAY * 1000;
mutex_unlock(&swrm->reslock);
return ret;