Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.
1: #ifndef _LINUX_IRQNR_H 2: #define _LINUX_IRQNR_H 3: 4: #include <uapi/linux/irqnr.h> 5: 6: 7: extern int nr_irqs; 8: extern struct irq_desc *irq_to_desc(unsigned int irq); 9: unsigned int irq_get_next_irq(unsigned int offset); 10: 11: # define for_each_irq_desc(irq, desc) \ 12: for (irq = 0, desc = irq_to_desc(irq); irq < nr_irqs; \ 13: irq++, desc = irq_to_desc(irq)) \ 14: if (!desc) \ 15: ; \ 16: else 17: 18: 19: # define for_each_irq_desc_reverse(irq, desc) \ 20: for (irq = nr_irqs - 1, desc = irq_to_desc(irq); irq >= 0; \ 21: irq--, desc = irq_to_desc(irq)) \ 22: if (!desc) \ 23: ; \ 24: else 25: 26: #ifdef CONFIG_SMP 27: #define irq_node(irq) (irq_get_irq_data(irq)->node) 28: #else 29: #define irq_node(irq) 0 30: #endif 31: 32: # define for_each_active_irq(irq) \ 33: for (irq = irq_get_next_irq(0); irq < nr_irqs; \ 34: irq = irq_get_next_irq(irq + 1)) 35: 36: #define for_each_irq_nr(irq) \ 37: for (irq = 0; irq < nr_irqs; irq++) 38: 39: #endif 40: