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

Commit dda1e135 authored by Alok Kumar's avatar Alok Kumar Committed by Gerrit - the friendly Code Review server
Browse files

wcnss: Add support to enable suspend_noirq



Enable wcnss platform support for suspend_noirq and
resume_noirq.

CRs-Fixed: 2231038
Change-Id: I2e5414a58c1a9ed489d0b874efb1a39291bed96a
Signed-off-by: default avatarAnurag Chouhan <achouhan@codeaurora.org>
parent cd4a99b6
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -1771,6 +1771,15 @@ static int wcnss_wlan_suspend(struct device *dev)
	return 0;
}

static int wcnss_wlan_suspend_noirq(struct device *dev)
{
	if (penv && dev && (dev == &penv->pdev->dev) &&
	    penv->smd_channel_ready &&
	    penv->pm_ops && penv->pm_ops->suspend_noirq)
		return penv->pm_ops->suspend_noirq(dev);
	return 0;
}

static int wcnss_wlan_resume(struct device *dev)
{
	if (penv && dev && (dev == &penv->pdev->dev) &&
@@ -1780,6 +1789,15 @@ static int wcnss_wlan_resume(struct device *dev)
	return 0;
}

static int wcnss_wlan_resume_noirq(struct device *dev)
{
	if (penv && dev && (dev == &penv->pdev->dev) &&
	    penv->smd_channel_ready &&
	    penv->pm_ops && penv->pm_ops->resume_noirq)
		return penv->pm_ops->resume_noirq(dev);
	return 0;
}

void wcnss_prevent_suspend(void)
{
	if (penv)
@@ -3535,6 +3553,8 @@ wcnss_wlan_remove(struct platform_device *pdev)
static const struct dev_pm_ops wcnss_wlan_pm_ops = {
	.suspend	= wcnss_wlan_suspend,
	.resume		= wcnss_wlan_resume,
	.suspend_noirq  = wcnss_wlan_suspend_noirq,
	.resume_noirq   = wcnss_wlan_resume_noirq,
};

#ifdef CONFIG_WCNSS_CORE_PRONTO