aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/hw_irq.h
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2009-02-13 03:49:38 -0500
committerIngo Molnar <mingo@elte.hu>2009-02-13 03:49:38 -0500
commitb1864e9a1afef41709886072c6e6248def0386f4 (patch)
tree2fe749209cf860c1dd10efd1bd2ad8df572bd66e /arch/x86/include/asm/hw_irq.h
parente9c4ffb11f0b19005b5b9dc8481687a3637e5887 (diff)
parent7032e8696726354d6180d8a2d17191f958cd93ae (diff)
Merge branch 'x86/core' into perfcounters/core
Conflicts: arch/x86/Kconfig arch/x86/kernel/apic.c arch/x86/kernel/setup_percpu.c
Diffstat (limited to 'arch/x86/include/asm/hw_irq.h')
-rw-r--r--arch/x86/include/asm/hw_irq.h24
1 files changed, 2 insertions, 22 deletions
diff --git a/arch/x86/include/asm/hw_irq.h b/arch/x86/include/asm/hw_irq.h
index aa93e53b85ee..f39881b6b68b 100644
--- a/arch/x86/include/asm/hw_irq.h
+++ b/arch/x86/include/asm/hw_irq.h
@@ -25,8 +25,6 @@
25#include <asm/irq.h> 25#include <asm/irq.h>
26#include <asm/sections.h> 26#include <asm/sections.h>
27 27
28#define platform_legacy_irq(irq) ((irq) < 16)
29
30/* Interrupt handlers registered during init_IRQ */ 28/* Interrupt handlers registered during init_IRQ */
31extern void apic_timer_interrupt(void); 29extern void apic_timer_interrupt(void);
32extern void error_interrupt(void); 30extern void error_interrupt(void);
@@ -60,7 +58,7 @@ extern void make_8259A_irq(unsigned int irq);
60extern void init_8259A(int aeoi); 58extern void init_8259A(int aeoi);
61 59
62/* IOAPIC */ 60/* IOAPIC */
63#define IO_APIC_IRQ(x) (((x) >= 16) || ((1<<(x)) & io_apic_irqs)) 61#define IO_APIC_IRQ(x) (((x) >= NR_IRQS_LEGACY) || ((1<<(x)) & io_apic_irqs))
64extern unsigned long io_apic_irqs; 62extern unsigned long io_apic_irqs;
65 63
66extern void init_VISWS_APIC_irqs(void); 64extern void init_VISWS_APIC_irqs(void);
@@ -69,15 +67,7 @@ extern void disable_IO_APIC(void);
69extern int IO_APIC_get_PCI_irq_vector(int bus, int slot, int fn); 67extern int IO_APIC_get_PCI_irq_vector(int bus, int slot, int fn);
70extern void setup_ioapic_dest(void); 68extern void setup_ioapic_dest(void);
71 69
72#ifdef CONFIG_X86_64
73extern void enable_IO_APIC(void); 70extern void enable_IO_APIC(void);
74#endif
75
76/* IPI functions */
77#ifdef CONFIG_X86_32
78extern void send_IPI_self(int vector);
79#endif
80extern void send_IPI(int dest, int vector);
81 71
82/* Statistics */ 72/* Statistics */
83extern atomic_t irq_err_count; 73extern atomic_t irq_err_count;
@@ -86,21 +76,11 @@ extern atomic_t irq_mis_count;
86/* EISA */ 76/* EISA */
87extern void eisa_set_level_irq(unsigned int irq); 77extern void eisa_set_level_irq(unsigned int irq);
88 78
89/* Voyager functions */
90extern asmlinkage void vic_cpi_interrupt(void);
91extern asmlinkage void vic_sys_interrupt(void);
92extern asmlinkage void vic_cmn_interrupt(void);
93extern asmlinkage void qic_timer_interrupt(void);
94extern asmlinkage void qic_invalidate_interrupt(void);
95extern asmlinkage void qic_reschedule_interrupt(void);
96extern asmlinkage void qic_enable_irq_interrupt(void);
97extern asmlinkage void qic_call_function_interrupt(void);
98
99/* SMP */ 79/* SMP */
100extern void smp_apic_timer_interrupt(struct pt_regs *); 80extern void smp_apic_timer_interrupt(struct pt_regs *);
101extern void smp_spurious_interrupt(struct pt_regs *); 81extern void smp_spurious_interrupt(struct pt_regs *);
102extern void smp_error_interrupt(struct pt_regs *); 82extern void smp_error_interrupt(struct pt_regs *);
103#ifdef CONFIG_X86_SMP 83#ifdef CONFIG_SMP
104extern void smp_reschedule_interrupt(struct pt_regs *); 84extern void smp_reschedule_interrupt(struct pt_regs *);
105extern void smp_call_function_interrupt(struct pt_regs *); 85extern void smp_call_function_interrupt(struct pt_regs *);
106extern void smp_call_function_single_interrupt(struct pt_regs *); 86extern void smp_call_function_single_interrupt(struct pt_regs *);