aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/sh/intc
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2010-10-27 22:36:31 -0400
committerPaul Mundt <lethal@linux-sh.org>2010-10-27 22:36:31 -0400
commit63111a3a70fb4d80e3b54ed75f13795e98f7a467 (patch)
treeb20d7ae26df0dbac361de76c6492f84545bb33a4 /drivers/sh/intc
parentfb41a49d96cd0fb6c63362ff1c8de22e9e7399af (diff)
sh: intc: switch irq_desc iteration to new active IRQ iterator.
There's no need to iterative over every single irq_desc when we can already work out which IRQs have a backing descriptor via the shiny new for_each_active_irq(). Switch to that instead. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers/sh/intc')
-rw-r--r--drivers/sh/intc/core.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/drivers/sh/intc/core.c b/drivers/sh/intc/core.c
index 338fad2a3fa4..873a99ff8f64 100644
--- a/drivers/sh/intc/core.c
+++ b/drivers/sh/intc/core.c
@@ -403,11 +403,8 @@ static int intc_suspend(struct sys_device *dev, pm_message_t state)
403 if (d->state.event != PM_EVENT_FREEZE) 403 if (d->state.event != PM_EVENT_FREEZE)
404 break; 404 break;
405 405
406 for_each_irq_nr(irq) { 406 for_each_active_irq(irq) {
407 desc = irq_to_desc(irq); 407 desc = irq_to_desc(irq);
408 if (!desc)
409 continue;
410
411 data = irq_get_irq_data(irq); 408 data = irq_get_irq_data(irq);
412 chip = irq_data_get_irq_chip(data); 409 chip = irq_data_get_irq_chip(data);
413 410
@@ -428,11 +425,8 @@ static int intc_suspend(struct sys_device *dev, pm_message_t state)
428 break; 425 break;
429 case PM_EVENT_SUSPEND: 426 case PM_EVENT_SUSPEND:
430 /* enable wakeup irqs belonging to this intc controller */ 427 /* enable wakeup irqs belonging to this intc controller */
431 for_each_irq_nr(irq) { 428 for_each_active_irq(irq) {
432 desc = irq_to_desc(irq); 429 desc = irq_to_desc(irq);
433 if (!desc)
434 continue;
435
436 data = irq_get_irq_data(irq); 430 data = irq_get_irq_data(irq);
437 chip = irq_data_get_irq_chip(data); 431 chip = irq_data_get_irq_chip(data);
438 432