Merge tag 'trace-v5.16-5' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt...
[linux-2.6-microblaze.git] / include / linux / pm_wakeirq.h
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 */