summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/wakeups.h
diff options
context:
space:
mode:
authorBitan Biswas <bbiswas@nvidia.com>2012-05-29 22:19:09 +0530
committerRohan Somvanshi <rsomvanshi@nvidia.com>2012-07-11 06:07:32 -0700
commit48651d264bdb2ff90624e965b8a68b011077ca7c (patch)
tree3b02c2fd3122e6a6b35d0c2049d4b290b37ae2d2 /arch/arm/mach-tegra/wakeups.h
parent25a4796d13bfd8ae0e7618e573ab0aad6f928a6d (diff)
ARM: tegra: support multiple wake sources with same irq
Earlier implementation only allowed single wake source for a particular irq in wake table. Changed implementation to support multiple wake sources ==> single irq mapping. bug 980993 Change-Id: Iacb00487531129ef19c53128824aba802e80350e Signed-off-by: Bitan Biswas <bbiswas@nvidia.com> Reviewed-on: http://git-master/r/103140 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/wakeups.h')
-rw-r--r--arch/arm/mach-tegra/wakeups.h27
1 files changed, 23 insertions, 4 deletions
diff --git a/arch/arm/mach-tegra/wakeups.h b/arch/arm/mach-tegra/wakeups.h
index ab113649d534..6d2f5f077601 100644
--- a/arch/arm/mach-tegra/wakeups.h
+++ b/arch/arm/mach-tegra/wakeups.h
@@ -17,13 +17,32 @@
#ifndef __WAKEUPS_H_
#define __WAKEUPS_H_
-/*
- * given irq number returns wake source index or negative value for error
- */
-int tegra_irq_to_wake(int irq);
+struct wake_mask_types {
+ u64 wake_mask_hi;
+ u64 wake_mask_lo;
+ u64 wake_mask_any;
+};
+
+/* sets 64-bit wake mask argument bits for wake sources given an irq */
+int tegra_irq_to_wake(unsigned int irq, int flow_type,
+ struct wake_mask_types *wake_msk);
/*
* given wake source index, returns irq number or negative value for error
*/
int tegra_wake_to_irq(int wake);
+/* disable selected wake source setting for particular board */
+int tegra_disable_wake_source(int wake);
+
+enum wake_polarity {
+ POLARITY_NONE = 0,
+ POLARITY_LEVEL_HI,
+ POLARITY_LEVEL_LO,
+ POLARITY_EDGE_ANY
+};
+
+struct tegra_wake_info {
+ int irq;
+ enum wake_polarity polarity;
+};
#endif /* end __WAKEUPS_H_ */