summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/pm-irq.c
diff options
context:
space:
mode:
authorBitan Biswas <bbiswas@nvidia.com>2012-08-06 11:17:25 +0530
committerLokesh Pathak <lpathak@nvidia.com>2012-08-07 08:46:26 -0700
commit7f9749a0050aa4bbe770f1a061f5ae8c8545dfa8 (patch)
treeb4901d7ebc356d9ec4cac2e7e97823ceced3040a /arch/arm/mach-tegra/pm-irq.c
parent20f1a101e669063e050a26e722bbc292d389352a (diff)
ARM: tegra: lp0 WAKE2 status clear
Tegra pmc WAKE2 status registers also need to be cleared before re-entering lp0 mode. Change-Id: I1bd5c48baf86ba23d0352594e97c360d363ce991 Signed-off-by: Bitan Biswas <bbiswas@nvidia.com> Reviewed-on: http://git-master/r/121185 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/pm-irq.c')
-rw-r--r--arch/arm/mach-tegra/pm-irq.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/pm-irq.c b/arch/arm/mach-tegra/pm-irq.c
index 4a3f3c31830c..4e3c06835b2f 100644
--- a/arch/arm/mach-tegra/pm-irq.c
+++ b/arch/arm/mach-tegra/pm-irq.c
@@ -284,10 +284,15 @@ static int tegra_pm_irq_syscore_suspend(void)
wake_enb = 0xffffffff;
}
- /* Clear PMC Wake Status register while going to suspend */
+ /* Clear PMC Wake Status registers while going to suspend */
temp = readl(pmc + PMC_WAKE_STATUS);
if (temp)
pmc_32kwritel(temp, PMC_WAKE_STATUS);
+#ifndef CONFIG_ARCH_TEGRA_2x_SOC
+ temp = readl(pmc + PMC_WAKE2_STATUS);
+ if (temp)
+ pmc_32kwritel(temp, PMC_WAKE2_STATUS);
+#endif
write_pmc_wake_level(wake_level);