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