14baa9922SRussell King #ifndef __ASM_ARM_IRQ_H 24baa9922SRussell King #define __ASM_ARM_IRQ_H 34baa9922SRussell King 4a2be01b1SRob Herring #define NR_IRQS_LEGACY 16 5a2be01b1SRob Herring 6a2be01b1SRob Herring #ifndef CONFIG_SPARSE_IRQ 7a09e64fbSRussell King #include <mach/irqs.h> 8a2be01b1SRob Herring #else 9a2be01b1SRob Herring #define NR_IRQS NR_IRQS_LEGACY 10a2be01b1SRob Herring #endif 114baa9922SRussell King 124baa9922SRussell King #ifndef irq_canonicalize 134baa9922SRussell King #define irq_canonicalize(i) (i) 144baa9922SRussell King #endif 154baa9922SRussell King 164baa9922SRussell King /* 174baa9922SRussell King * Use this value to indicate lack of interrupt 184baa9922SRussell King * capability 194baa9922SRussell King */ 204baa9922SRussell King #ifndef NO_IRQ 214baa9922SRussell King #define NO_IRQ ((unsigned int)(-1)) 224baa9922SRussell King #endif 234baa9922SRussell King 244baa9922SRussell King #ifndef __ASSEMBLY__ 254baa9922SRussell King struct irqaction; 26aedceb2aSviresh kumar struct pt_regs; 274baa9922SRussell King extern void migrate_irqs(void); 28446616dbSRussell King 29446616dbSRussell King extern void asm_do_IRQ(unsigned int, struct pt_regs *); 30a4841e39SRussell King - ARM Linux void handle_IRQ(unsigned int, struct pt_regs *); 31446616dbSRussell King void init_IRQ(void); 32446616dbSRussell King 33f36a3bb1SCatalin Marinas #ifdef CONFIG_MULTI_IRQ_HANDLER 34f36a3bb1SCatalin Marinas extern void (*handle_arch_irq)(struct pt_regs *); 35f36a3bb1SCatalin Marinas extern void set_handle_irq(void (*handle_irq)(struct pt_regs *)); 36f36a3bb1SCatalin Marinas #endif 37f36a3bb1SCatalin Marinas 3896f0e003SRussell King #ifdef CONFIG_SMP 3996f0e003SRussell King extern void arch_trigger_all_cpu_backtrace(bool); 4096f0e003SRussell King #define arch_trigger_all_cpu_backtrace(x) arch_trigger_all_cpu_backtrace(x) 4196f0e003SRussell King #endif 4296f0e003SRussell King 43*b4ff8389SBoris Ostrovsky static inline int nr_legacy_irqs(void) 44*b4ff8389SBoris Ostrovsky { 45*b4ff8389SBoris Ostrovsky return NR_IRQS_LEGACY; 46*b4ff8389SBoris Ostrovsky } 47*b4ff8389SBoris Ostrovsky 484baa9922SRussell King #endif 494baa9922SRussell King 504baa9922SRussell King #endif 514baa9922SRussell King 52