irq.h
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:1k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /*
  2.  * This file is subject to the terms and conditions of the GNU General Public
  3.  * License.  See the file "COPYING" in the main directory of this archive
  4.  * for more details.
  5.  *
  6.  * Copyright (C) 1994 by Waldorf GMBH, written by Ralf Baechle
  7.  * Copyright (C) 1995, 96, 97, 98, 99, 2000, 2001 by Ralf Baechle
  8.  */
  9. #ifndef _ASM_IRQ_H
  10. #define _ASM_IRQ_H
  11. #include <linux/config.h>
  12. #define NR_IRQS 64 /* Largest number of ints of all machines.  */
  13. #define TIMER_IRQ 0
  14. #ifdef CONFIG_I8259
  15. static inline int irq_cannonicalize(int irq)
  16. {
  17. return ((irq == 2) ? 9 : irq);
  18. }
  19. #else
  20. #define irq_cannonicalize(irq) (irq) /* Sane hardware, sane code ... */
  21. #endif
  22. struct irqaction;
  23. extern int i8259_setup_irq(int irq, struct irqaction * new);
  24. extern void disable_irq(unsigned int);
  25. #ifndef CONFIG_NEW_IRQ
  26. #define disable_irq_nosync disable_irq
  27. #else
  28. extern void disable_irq_nosync(unsigned int);
  29. #endif
  30. extern void enable_irq(unsigned int);
  31. /* Machine specific interrupt initialization  */
  32. extern void (*irq_setup)(void);
  33. #endif /* _ASM_IRQ_H */