xref: /linux/include/linux/pm_wakeirq.h (revision 24bce201d79807b668bf9d9e0aca801c5c0d5f78)
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 
28 static inline int dev_pm_set_wake_irq(struct device *dev, int irq)
29 {
30 	return 0;
31 }
32 
33 static inline int dev_pm_set_dedicated_wake_irq(struct device *dev, int irq)
34 {
35 	return 0;
36 }
37 
38 static inline int dev_pm_set_dedicated_wake_irq_reverse(struct device *dev, int irq)
39 {
40 	return 0;
41 }
42 
43 static inline void dev_pm_clear_wake_irq(struct device *dev)
44 {
45 }
46 
47 static inline void dev_pm_enable_wake_irq(struct device *dev)
48 {
49 }
50 
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