irq.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

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, 01, 02 by Ralf Baechle
  8.  * Copyright (C) 1999, 2000 Silicon Graphics, Inc.
  9.  * Copyright (C) 2001 Kanoj Sarcar
  10.  */
  11. #ifndef _ASM_IRQ_H
  12. #define _ASM_IRQ_H
  13. #include <linux/config.h>
  14. #define NR_IRQS 128 /* Largest number of ints of all machines.  */
  15. #ifdef CONFIG_I8259
  16. static inline int irq_cannonicalize(int irq)
  17. {
  18. return ((irq == 2) ? 9 : irq);
  19. }
  20. #else
  21. #define irq_cannonicalize(irq) (irq) /* Sane hardware, sane code ... */
  22. #endif
  23. struct irqaction;
  24. extern int i8259_setup_irq(int irq, struct irqaction * new);
  25. extern void disable_irq(unsigned int);
  26. #ifdef CONFIG_NEW_IRQ
  27. extern void disable_irq_nosync(unsigned int);
  28. #else
  29. #define disable_irq_nosync disable_irq
  30. #endif
  31. extern void enable_irq(unsigned int);
  32. /* Machine specific interrupt initialization  */
  33. extern void (*irq_setup)(void);
  34. extern void init_generic_irq(void);
  35. #endif /* _ASM_IRQ_H */