diff options
author | Krzysztof Kozlowski <k.kozlowski@samsung.com> | 2015-05-08 14:08:33 +0900 |
---|---|---|
committer | Seung-Woo Kim <sw0312.kim@samsung.com> | 2016-12-14 13:44:54 +0900 |
commit | c9a2c6ac8c8902b06f6c02a98825b0ae3b412cb8 (patch) | |
tree | bc5308cba5292d06e868c90f0531cb345f66302e /drivers/net | |
parent | 3f1a9fddfe8520b4009471f685ce15ed89d3fa4d (diff) |
local/pci: pci-exynos5433: Disable WiFi waking from Suspend to RAM
Disable the wake up of wlan_host_wake interrupt so WiFi won't resume
system from Suspend to RAM.
Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/wireless/bcmdhd4358/dhd_pcie_linux.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/wireless/bcmdhd4358/dhd_pcie_linux.c b/drivers/net/wireless/bcmdhd4358/dhd_pcie_linux.c index e8bcd01b9883..8f4da7ff9849 100644 --- a/drivers/net/wireless/bcmdhd4358/dhd_pcie_linux.c +++ b/drivers/net/wireless/bcmdhd4358/dhd_pcie_linux.c @@ -172,6 +172,9 @@ static struct pci_driver dhdpcie_driver = { resume: dhdpcie_pci_resume, }; +/* IRQ from wlan_host_wake GPIO in dhd_custom_exynos.c */ +extern int wlan_host_wake_irq; + int dhdpcie_init_succeeded = FALSE; #ifndef BCMPCIE_OOB_HOST_WAKE @@ -231,6 +234,10 @@ static int dhdpcie_suspend_dev(struct pci_dev *dev) { int ret; DHD_TRACE_HW4(("%s: Enter\n", __FUNCTION__)); + + if (wlan_host_wake_irq) + disable_irq_wake(wlan_host_wake_irq); + #ifndef BCMPCIE_OOB_HOST_WAKE dhdpcie_pme_active(dev, TRUE); #endif /* BCMPCIE_OOB_HOST_WAKE */ @@ -264,6 +271,10 @@ static int dhdpcie_resume_dev(struct pci_dev *dev) #ifndef BCMPCIE_OOB_HOST_WAKE dhdpcie_pme_active(dev, FALSE); #endif /* BCMPCIE_OOB_HOST_WAKE */ + + if (wlan_host_wake_irq) + enable_irq_wake(wlan_host_wake_irq); + return err; } |