summaryrefslogtreecommitdiffstats
path: root/kernel/irq
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2014-08-28 15:48:59 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2014-09-01 13:48:13 +0200
commit5417de222393164b87b2d142b6ec332be40a2564 (patch)
tree8885e8f625de8a14e98c37165ca935dda860f621 /kernel/irq
parentgenirq: Add sanity checks for PM options on shared interrupt lines (diff)
downloadlinux-5417de222393164b87b2d142b6ec332be40a2564.tar.xz
linux-5417de222393164b87b2d142b6ec332be40a2564.zip
genirq: Make use of pm misfeature accounting
Use the accounting fields which got introduced for snity checking for the various PM options. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'kernel/irq')
-rw-r--r--kernel/irq/pm.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/kernel/irq/pm.c b/kernel/irq/pm.c
index 1b1b67a73218..74ca6bb541d5 100644
--- a/kernel/irq/pm.c
+++ b/kernel/irq/pm.c
@@ -51,7 +51,7 @@ void irq_pm_remove_action(struct irq_desc *desc, struct irqaction *action)
static void suspend_device_irq(struct irq_desc *desc, int irq)
{
- if (!desc->action || (desc->action->flags & IRQF_NO_SUSPEND))
+ if (!desc->action || desc->no_suspend_depth)
return;
desc->istate |= IRQS_SUSPENDED;
@@ -94,11 +94,8 @@ static void resume_irq(struct irq_desc *desc, int irq)
if (desc->istate & IRQS_SUSPENDED)
goto resume;
- if (!desc->action)
- return;
-
- /* Interrupts marked with that flag are force reenabled */
- if (!(desc->action->flags & IRQF_FORCE_RESUME))
+ /* Force resume the interrupt? */
+ if (!desc->force_resume_depth)
return;
/* Pretend that it got disabled ! */