1 /*
2 * pm_wakeirq.h - Device wakeirq helper functions
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 *
8 * This program is distributed "as is" WITHOUT ANY WARRANTY of any
9 * kind, whether express or implied; without even the implied warranty
10 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 */
13
14 #ifndef _LINUX_PM_WAKEIRQ_H
15 #define _LINUX_PM_WAKEIRQ_H
16
17 #ifdef CONFIG_PM
18
19 extern int dev_pm_set_wake_irq(struct device *dev, int irq);
20 extern int dev_pm_set_dedicated_wake_irq(struct device *dev, int irq);
21 extern int dev_pm_set_dedicated_wake_irq_reverse(struct device *dev, int irq);
22 extern void dev_pm_clear_wake_irq(struct device *dev);
23 extern void dev_pm_enable_wake_irq(struct device *dev);
24 extern void dev_pm_disable_wake_irq(struct device *dev);
25
26 #else /* !CONFIG_PM */
27
dev_pm_set_wake_irq(struct device * dev,int irq)28 static inline int dev_pm_set_wake_irq(struct device *dev, int irq)
29 {
30 return 0;
31 }
32
dev_pm_set_dedicated_wake_irq(struct device * dev,int irq)33 static inline int dev_pm_set_dedicated_wake_irq(struct device *dev, int irq)
34 {
35 return 0;
36 }
37
dev_pm_set_dedicated_wake_irq_reverse(struct device * dev,int irq)38 static inline int dev_pm_set_dedicated_wake_irq_reverse(struct device *dev, int irq)
39 {
40 return 0;
41 }
42
dev_pm_clear_wake_irq(struct device * dev)43 static inline void dev_pm_clear_wake_irq(struct device *dev)
44 {
45 }
46
dev_pm_enable_wake_irq(struct device * dev)47 static inline void dev_pm_enable_wake_irq(struct device *dev)
48 {
49 }
50
dev_pm_disable_wake_irq(struct device * dev)51 static inline void dev_pm_disable_wake_irq(struct device *dev)
52 {
53 }
54
55 #endif /* CONFIG_PM */
56 #endif /* _LINUX_PM_WAKEIRQ_H */
57