1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* pm_wakeirq.h - Device wakeirq helper functions */ 3 4 #ifndef _LINUX_PM_WAKEIRQ_H 5 #define _LINUX_PM_WAKEIRQ_H 6 7 #ifdef CONFIG_PM 8 9 extern int dev_pm_set_wake_irq(struct device *dev, int irq); 10 extern int dev_pm_set_dedicated_wake_irq(struct device *dev, int irq); 11 extern int dev_pm_set_dedicated_wake_irq_reverse(struct device *dev, int irq); 12 extern void dev_pm_clear_wake_irq(struct device *dev); 13 extern void dev_pm_enable_wake_irq(struct device *dev); 14 extern void dev_pm_disable_wake_irq(struct device *dev); 15 16 #else /* !CONFIG_PM */ 17 18 static inline int dev_pm_set_wake_irq(struct device *dev, int irq) 19 { 20 return 0; 21 } 22 23 static inline int dev_pm_set_dedicated_wake_irq(struct device *dev, int irq) 24 { 25 return 0; 26 } 27 28 static inline int dev_pm_set_dedicated_wake_irq_reverse(struct device *dev, int irq) 29 { 30 return 0; 31 } 32 33 static inline void dev_pm_clear_wake_irq(struct device *dev) 34 { 35 } 36 37 static inline void dev_pm_enable_wake_irq(struct device *dev) 38 { 39 } 40 41 static inline void dev_pm_disable_wake_irq(struct device *dev) 42 { 43 } 44 45 #endif /* CONFIG_PM */ 46 #endif /* _LINUX_PM_WAKEIRQ_H */ 47