home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / arch / x86 / include / asm / irq.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-12-24  |  1.1 KB  |  51 lines

  1. #ifndef _ASM_X86_IRQ_H
  2. #define _ASM_X86_IRQ_H
  3. /*
  4.  *    (C) 1992, 1993 Linus Torvalds, (C) 1997 Ingo Molnar
  5.  *
  6.  *    IRQ/IPI changes taken from work by Thomas Radke
  7.  *    <tomsoft@informatik.tu-chemnitz.de>
  8.  */
  9.  
  10. #include <asm/apicdef.h>
  11. #include <asm/irq_vectors.h>
  12.  
  13. static inline int irq_canonicalize(int irq)
  14. {
  15.     return ((irq == 2) ? 9 : irq);
  16. }
  17.  
  18. #ifdef CONFIG_X86_LOCAL_APIC
  19. # define ARCH_HAS_NMI_WATCHDOG
  20. #endif
  21.  
  22. #ifdef CONFIG_4KSTACKS
  23.   extern void irq_ctx_init(int cpu);
  24.   extern void irq_ctx_exit(int cpu);
  25. # define __ARCH_HAS_DO_SOFTIRQ
  26. #else
  27. # define irq_ctx_init(cpu) do { } while (0)
  28. # define irq_ctx_exit(cpu) do { } while (0)
  29. # ifdef CONFIG_X86_64
  30. #  define __ARCH_HAS_DO_SOFTIRQ
  31. # endif
  32. #endif
  33.  
  34. #ifdef CONFIG_IRQBALANCE
  35. extern int irqbalance_disable(char *str);
  36. #endif
  37.  
  38. #ifdef CONFIG_HOTPLUG_CPU
  39. #include <linux/cpumask.h>
  40. extern void fixup_irqs(cpumask_t map);
  41. #endif
  42.  
  43. extern unsigned int do_IRQ(struct pt_regs *regs);
  44. extern void init_IRQ(void);
  45. extern void native_init_IRQ(void);
  46.  
  47. /* Interrupt vector management */
  48. extern DECLARE_BITMAP(used_vectors, NR_VECTORS);
  49.  
  50. #endif /* _ASM_X86_IRQ_H */
  51.