Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef __ASM_ARM_IRQ_H
0003 #define __ASM_ARM_IRQ_H
0004 
0005 #define NR_IRQS_LEGACY  16
0006 
0007 #ifndef CONFIG_SPARSE_IRQ
0008 #include <mach/irqs.h>
0009 #else
0010 #define NR_IRQS NR_IRQS_LEGACY
0011 #endif
0012 
0013 #ifndef irq_canonicalize
0014 #define irq_canonicalize(i) (i)
0015 #endif
0016 
0017 /*
0018  * Use this value to indicate lack of interrupt
0019  * capability
0020  */
0021 #ifndef NO_IRQ
0022 #define NO_IRQ  ((unsigned int)(-1))
0023 #endif
0024 
0025 #ifndef __ASSEMBLY__
0026 struct irqaction;
0027 struct pt_regs;
0028 
0029 void handle_IRQ(unsigned int, struct pt_regs *);
0030 void init_IRQ(void);
0031 
0032 #ifdef CONFIG_SMP
0033 #include <linux/cpumask.h>
0034 
0035 extern void arch_trigger_cpumask_backtrace(const cpumask_t *mask,
0036                        bool exclude_self);
0037 #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace
0038 #endif
0039 
0040 static inline int nr_legacy_irqs(void)
0041 {
0042     return NR_IRQS_LEGACY;
0043 }
0044 
0045 #endif
0046 
0047 #endif
0048