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

Linux/Unix编程

开发平台:

Unix_Linux

  1. /*
  2.  *  linux/include/asm-mips/tx3927/irq.h
  3.  *
  4.  * This file is subject to the terms and conditions of the GNU General Public
  5.  * License.  See the file "COPYING" in the main directory of this archive
  6.  * for more details.
  7.  *
  8.  * Copyright (C) 2001 Toshiba Corporation
  9.  */
  10. #ifndef __ASM_TX3927_IRQ_H
  11. #define __ASM_TX3927_IRQ_H
  12. #ifndef _LANGUAGE_ASSEMBLY
  13. #include <asm/irq.h>
  14. struct tb_irq_space {
  15. struct tb_irq_space* next;
  16. int start_irqno;
  17. int nr_irqs;
  18. void (*mask_func)(int irq_nr, int space_id);
  19. void (*unmask_func)(int irq_no, int space_id);
  20. const char *name;
  21. int space_id;
  22. int can_share;
  23. };
  24. extern struct tb_irq_space* tb_irq_spaces;
  25. static __inline__ void add_tb_irq_space(struct tb_irq_space* sp)
  26. {
  27. sp->next = tb_irq_spaces;
  28. tb_irq_spaces = sp;
  29. }
  30. struct pt_regs;
  31. extern void
  32. toshibaboards_spurious(struct pt_regs *regs, int irq);
  33. extern void
  34. toshibaboards_irqdispatch(struct pt_regs *regs, int irq);
  35. extern struct irqaction *
  36. toshibaboards_get_irq_action(int irq);
  37. extern int
  38. toshibaboards_setup_irq(int irq, struct irqaction * new);
  39. #ifdef CONFIG_TX_BRANCH_LIKELY_BUG_WORKAROUND
  40. extern void tx_branch_likely_bug_fixup(struct pt_regs *regs);
  41. #endif
  42. extern int (*toshibaboards_gen_iack)(void);
  43. #endif /* _LANGUAGE_ASSEMBLY */
  44. #define NR_ISA_IRQS 16
  45. #define TB_IRQ_IS_ISA(irq)
  46. (0 <= (irq) && (irq) < NR_ISA_IRQS)
  47. #define TB_IRQ_TO_ISA_IRQ(irq) (irq)
  48. #endif /* __ASM_TX3927_IRQ_H */