diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2014-08-28 09:48:59 -0400 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2014-09-01 07:48:13 -0400 |
commit | 5417de222393164b87b2d142b6ec332be40a2564 (patch) | |
tree | 8885e8f625de8a14e98c37165ca935dda860f621 /kernel/irq | |
parent | cab303be91dc47942bc25de33dc1140123540800 (diff) |
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.c | 9 |
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) | |||
51 | 51 | ||
52 | static void suspend_device_irq(struct irq_desc *desc, int irq) | 52 | static void suspend_device_irq(struct irq_desc *desc, int irq) |
53 | { | 53 | { |
54 | if (!desc->action || (desc->action->flags & IRQF_NO_SUSPEND)) | 54 | if (!desc->action || desc->no_suspend_depth) |
55 | return; | 55 | return; |
56 | 56 | ||
57 | desc->istate |= IRQS_SUSPENDED; | 57 | desc->istate |= IRQS_SUSPENDED; |
@@ -94,11 +94,8 @@ static void resume_irq(struct irq_desc *desc, int irq) | |||
94 | if (desc->istate & IRQS_SUSPENDED) | 94 | if (desc->istate & IRQS_SUSPENDED) |
95 | goto resume; | 95 | goto resume; |
96 | 96 | ||
97 | if (!desc->action) | 97 | /* Force resume the interrupt? */ |
98 | return; | 98 | if (!desc->force_resume_depth) |
99 | |||
100 | /* Interrupts marked with that flag are force reenabled */ | ||
101 | if (!(desc->action->flags & IRQF_FORCE_RESUME)) | ||
102 | return; | 99 | return; |
103 | 100 | ||
104 | /* Pretend that it got disabled ! */ | 101 | /* Pretend that it got disabled ! */ |