diff options
author | KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> | 2008-12-25 22:24:24 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-12-26 03:48:17 -0500 |
commit | f9af0e70911e9d6cc9a68f784dca86415486084d (patch) | |
tree | 58a83c34cc8a511b5e05d48425251621e9b471a1 /include/linux/irqnr.h | |
parent | 51bc39f4ba35bae153b32145077fb1109bcae14c (diff) |
irq: for_each_irq_desc() move to irqnr.h
Impact: cleanup
before CONFIG_SPARSE_IRQ age, for_each_irq_desc() sat in irqnr.h and
could be called from generic code.
CONFIG_SPARSE_IRQ breaks this assumption, but SPARSE_IRQ version
for_each_irq_desc() also can move into irqnr.h easily.
Also, this patch unifies CONFIG_SPARSE_IRQ and !CONFIG_SPARSE_IRQ
for_each_irq_desc().
Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/irqnr.h')
-rw-r--r-- | include/linux/irqnr.h | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/include/linux/irqnr.h b/include/linux/irqnr.h index 95d2b74641f5..c4a59c7a478b 100644 --- a/include/linux/irqnr.h +++ b/include/linux/irqnr.h | |||
@@ -15,20 +15,19 @@ | |||
15 | 15 | ||
16 | # define for_each_irq_desc_reverse(irq, desc) \ | 16 | # define for_each_irq_desc_reverse(irq, desc) \ |
17 | for (irq = nr_irqs - 1; irq >= 0; irq--) | 17 | for (irq = nr_irqs - 1; irq >= 0; irq--) |
18 | #else | 18 | #else /* CONFIG_GENERIC_HARDIRQS */ |
19 | 19 | ||
20 | extern int nr_irqs; | 20 | extern int nr_irqs; |
21 | extern struct irq_desc *irq_to_desc(unsigned int irq); | ||
21 | 22 | ||
22 | #ifndef CONFIG_SPARSE_IRQ | 23 | # define for_each_irq_desc(irq, desc) \ |
24 | for (irq = 0, desc = irq_to_desc(irq); irq < nr_irqs; \ | ||
25 | irq++, desc = irq_to_desc(irq)) | ||
26 | # define for_each_irq_desc_reverse(irq, desc) \ | ||
27 | for (irq = nr_irqs - 1, desc = irq_to_desc(irq); irq >= 0; \ | ||
28 | irq--, desc = irq_to_desc(irq)) | ||
23 | 29 | ||
24 | struct irq_desc; | 30 | #endif /* CONFIG_GENERIC_HARDIRQS */ |
25 | # define for_each_irq_desc(irq, desc) \ | ||
26 | for (irq = 0, desc = irq_desc; irq < nr_irqs; irq++, desc++) | ||
27 | # define for_each_irq_desc_reverse(irq, desc) \ | ||
28 | for (irq = nr_irqs - 1, desc = irq_desc + (nr_irqs - 1); \ | ||
29 | irq >= 0; irq--, desc--) | ||
30 | #endif | ||
31 | #endif | ||
32 | 31 | ||
33 | #define for_each_irq_nr(irq) \ | 32 | #define for_each_irq_nr(irq) \ |
34 | for (irq = 0; irq < nr_irqs; irq++) | 33 | for (irq = 0; irq < nr_irqs; irq++) |