linux/arch/arm/include/asm/irq.h
<<
>>
Prefs
   1#ifndef __ASM_ARM_IRQ_H
   2#define __ASM_ARM_IRQ_H
   3
   4#define NR_IRQS_LEGACY  16
   5
   6#ifndef CONFIG_SPARSE_IRQ
   7#include <mach/irqs.h>
   8#else
   9#define NR_IRQS NR_IRQS_LEGACY
  10#endif
  11
  12#ifndef irq_canonicalize
  13#define irq_canonicalize(i)     (i)
  14#endif
  15
  16/*
  17 * Use this value to indicate lack of interrupt
  18 * capability
  19 */
  20#ifndef NO_IRQ
  21#define NO_IRQ  ((unsigned int)(-1))
  22#endif
  23
  24#ifndef __ASSEMBLY__
  25struct irqaction;
  26struct pt_regs;
  27extern void migrate_irqs(void);
  28
  29extern void asm_do_IRQ(unsigned int, struct pt_regs *);
  30void handle_IRQ(unsigned int, struct pt_regs *);
  31void init_IRQ(void);
  32
  33#ifdef CONFIG_MULTI_IRQ_HANDLER
  34extern void (*handle_arch_irq)(struct pt_regs *);
  35extern void set_handle_irq(void (*handle_irq)(struct pt_regs *));
  36#endif
  37
  38#ifdef CONFIG_SMP
  39extern void arch_trigger_cpumask_backtrace(const cpumask_t *mask,
  40                                           bool exclude_self);
  41#define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace
  42#endif
  43
  44static inline int nr_legacy_irqs(void)
  45{
  46        return NR_IRQS_LEGACY;
  47}
  48
  49#endif
  50
  51#endif
  52
  53