From 3dba2bed8216623e281409788de8c7c322959421 Mon Sep 17 00:00:00 2001 From: Rahul Bansal Date: Mon, 13 Dec 2010 16:18:12 +0530 Subject: [arm/tegra] Support for Wake-On-Wireless Event. Support for device wakeup on receiving in-band SDIO-WIFI interrupt for incoming wifi pakcket. Bug: 767438 Change-Id: Ibc1f95cc38eacef84e528e1beca6a4fdbdc36338 Reviewed-on: http://git-master/r/12702 Reviewed-by: Rahul Bansal Tested-by: Rahul Bansal Reviewed-by: Rakesh Kumar Reviewed-by: Bharat Nihalani Tested-by: Bharat Nihalani --- drivers/mmc/host/sdhci-tegra.c | 8 ++++++++ 1 file changed, 8 insertions(+) mode change 100644 => 100755 drivers/mmc/host/sdhci-tegra.c (limited to 'drivers/mmc/host/sdhci-tegra.c') diff --git a/drivers/mmc/host/sdhci-tegra.c b/drivers/mmc/host/sdhci-tegra.c old mode 100644 new mode 100755 index b6308d5a9572..a16aa2b53417 --- a/drivers/mmc/host/sdhci-tegra.c +++ b/drivers/mmc/host/sdhci-tegra.c @@ -283,6 +283,10 @@ static int tegra_sdhci_suspend(struct platform_device *pdev, pm_message_t state) u16 clk; unsigned int clock = 100000; + if (device_may_wakeup(&pdev->dev)) { + enable_irq_wake(host->sdhci->irq); + } + /* save interrupt status before suspending */ host->sdhci_ints = sdhci_readl(host->sdhci, SDHCI_INT_ENABLE); @@ -320,6 +324,10 @@ static int tegra_sdhci_resume(struct platform_device *pdev) if (host->card_always_on && is_card_sdio(host->sdhci->mmc->card)) { int ret = 0; + if (device_may_wakeup(&pdev->dev)) { + disable_irq_wake(host->sdhci->irq); + } + /* soft reset SD host controller and enable interrupts */ ret = tegra_sdhci_restore(host->sdhci); if (ret) { -- cgit v1.2.3