Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: only include mach/irqs.h for !SPARSE_IRQ

Make mach/irqs.h optional for SPARSE_IRQ. With this change mach/irqs.h can
be removed by converting platforms over to sparse irq.

Platforms either need to set nr_irqs in their machine desc or all irqchips
used by a platform need to allocate their irq_descs. There cannot be a
mixture. Once this is done, the platforms can select SPARSE_IRQ. shmobile
does the latter, and mmp and pxa do the former.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>

+6 -2
+6 -2
arch/arm/include/asm/irq.h
··· 1 1 #ifndef __ASM_ARM_IRQ_H 2 2 #define __ASM_ARM_IRQ_H 3 3 4 + #define NR_IRQS_LEGACY 16 5 + 6 + #ifndef CONFIG_SPARSE_IRQ 4 7 #include <mach/irqs.h> 8 + #else 9 + #define NR_IRQS NR_IRQS_LEGACY 10 + #endif 5 11 6 12 #ifndef irq_canonicalize 7 13 #define irq_canonicalize(i) (i) 8 14 #endif 9 - 10 - #define NR_IRQS_LEGACY 16 11 15 12 16 /* 13 17 * Use this value to indicate lack of interrupt