aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/irq/internals.h
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2014-09-30 20:46:13 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2014-09-30 20:46:13 +0200
commite4cb0c9e92f7b16db7a1e892ac6bcf2f736dfd50 (patch)
tree35d66a4fc97aa642c14483966f050b5663ff02ca /kernel/irq/internals.h
parentMerge back earlier 'pm-sleep' material for v3.18. (diff)
parentPM / genirq: Document rules related to system suspend and interrupts (diff)
downloadlinux-e4cb0c9e92f7b16db7a1e892ac6bcf2f736dfd50.tar.gz
linux-e4cb0c9e92f7b16db7a1e892ac6bcf2f736dfd50.zip
Merge branch 'pm-genirq' into acpi-pm
Diffstat (limited to 'kernel/irq/internals.h')
-rw-r--r--kernel/irq/internals.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/kernel/irq/internals.h b/kernel/irq/internals.h
index 099ea2e0eb88..4332d766619d 100644
--- a/kernel/irq/internals.h
+++ b/kernel/irq/internals.h
@@ -63,8 +63,8 @@ enum {
extern int __irq_set_trigger(struct irq_desc *desc, unsigned int irq,
unsigned long flags);
-extern void __disable_irq(struct irq_desc *desc, unsigned int irq, bool susp);
-extern void __enable_irq(struct irq_desc *desc, unsigned int irq, bool resume);
+extern void __disable_irq(struct irq_desc *desc, unsigned int irq);
+extern void __enable_irq(struct irq_desc *desc, unsigned int irq);
extern int irq_startup(struct irq_desc *desc, bool resend);
extern void irq_shutdown(struct irq_desc *desc);
@@ -194,3 +194,15 @@ static inline void kstat_incr_irqs_this_cpu(unsigned int irq, struct irq_desc *d
__this_cpu_inc(*desc->kstat_irqs);
__this_cpu_inc(kstat.irqs_sum);
}
+
+#ifdef CONFIG_PM_SLEEP
+bool irq_pm_check_wakeup(struct irq_desc *desc);
+void irq_pm_install_action(struct irq_desc *desc, struct irqaction *action);
+void irq_pm_remove_action(struct irq_desc *desc, struct irqaction *action);
+#else
+static inline bool irq_pm_check_wakeup(struct irq_desc *desc) { return false; }
+static inline void
+irq_pm_install_action(struct irq_desc *desc, struct irqaction *action) { }
+static inline void
+irq_pm_remove_action(struct irq_desc *desc, struct irqaction *action) { }
+#endif