irq.h 859 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef __ASM_ARM_IRQ_H
  3. #define __ASM_ARM_IRQ_H
  4. #define NR_IRQS_LEGACY 16
  5. #ifndef CONFIG_SPARSE_IRQ
  6. #include <mach/irqs.h>
  7. #else
  8. #define NR_IRQS NR_IRQS_LEGACY
  9. #endif
  10. #ifndef irq_canonicalize
  11. #define irq_canonicalize(i) (i)
  12. #endif
  13. /*
  14. * Use this value to indicate lack of interrupt
  15. * capability
  16. */
  17. #ifndef NO_IRQ
  18. #define NO_IRQ ((unsigned int)(-1))
  19. #endif
  20. #ifndef __ASSEMBLY__
  21. struct irqaction;
  22. struct pt_regs;
  23. extern void asm_do_IRQ(unsigned int, struct pt_regs *);
  24. void handle_IRQ(unsigned int, struct pt_regs *);
  25. void init_IRQ(void);
  26. #ifdef CONFIG_SMP
  27. extern void arch_trigger_cpumask_backtrace(const cpumask_t *mask,
  28. bool exclude_self);
  29. #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace
  30. #endif
  31. static inline int nr_legacy_irqs(void)
  32. {
  33. return NR_IRQS_LEGACY;
  34. }
  35. #endif
  36. #endif