diff options
Diffstat (limited to 'arch/x86/include/asm/hw_irq.h')
-rw-r--r-- | arch/x86/include/asm/hw_irq.h | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/arch/x86/include/asm/hw_irq.h b/arch/x86/include/asm/hw_irq.h index 4b4921d7a28e..6df45f639666 100644 --- a/arch/x86/include/asm/hw_irq.h +++ b/arch/x86/include/asm/hw_irq.h | |||
@@ -65,7 +65,26 @@ extern unsigned long io_apic_irqs; | |||
65 | extern void init_VISWS_APIC_irqs(void); | 65 | extern void init_VISWS_APIC_irqs(void); |
66 | extern void setup_IO_APIC(void); | 66 | extern void setup_IO_APIC(void); |
67 | extern void disable_IO_APIC(void); | 67 | extern void disable_IO_APIC(void); |
68 | extern int IO_APIC_get_PCI_irq_vector(int bus, int slot, int fn); | 68 | |
69 | struct io_apic_irq_attr { | ||
70 | int ioapic; | ||
71 | int ioapic_pin; | ||
72 | int trigger; | ||
73 | int polarity; | ||
74 | }; | ||
75 | |||
76 | static inline void set_io_apic_irq_attr(struct io_apic_irq_attr *irq_attr, | ||
77 | int ioapic, int ioapic_pin, | ||
78 | int trigger, int polarity) | ||
79 | { | ||
80 | irq_attr->ioapic = ioapic; | ||
81 | irq_attr->ioapic_pin = ioapic_pin; | ||
82 | irq_attr->trigger = trigger; | ||
83 | irq_attr->polarity = polarity; | ||
84 | } | ||
85 | |||
86 | extern int IO_APIC_get_PCI_irq_vector(int bus, int devfn, int pin, | ||
87 | struct io_apic_irq_attr *irq_attr); | ||
69 | extern void setup_ioapic_dest(void); | 88 | extern void setup_ioapic_dest(void); |
70 | 89 | ||
71 | extern void enable_IO_APIC(void); | 90 | extern void enable_IO_APIC(void); |
@@ -80,7 +99,11 @@ extern void eisa_set_level_irq(unsigned int irq); | |||
80 | /* SMP */ | 99 | /* SMP */ |
81 | extern void smp_apic_timer_interrupt(struct pt_regs *); | 100 | extern void smp_apic_timer_interrupt(struct pt_regs *); |
82 | extern void smp_spurious_interrupt(struct pt_regs *); | 101 | extern void smp_spurious_interrupt(struct pt_regs *); |
102 | extern void smp_generic_interrupt(struct pt_regs *); | ||
83 | extern void smp_error_interrupt(struct pt_regs *); | 103 | extern void smp_error_interrupt(struct pt_regs *); |
104 | #ifdef CONFIG_X86_IO_APIC | ||
105 | extern asmlinkage void smp_irq_move_cleanup_interrupt(void); | ||
106 | #endif | ||
84 | #ifdef CONFIG_SMP | 107 | #ifdef CONFIG_SMP |
85 | extern void smp_reschedule_interrupt(struct pt_regs *); | 108 | extern void smp_reschedule_interrupt(struct pt_regs *); |
86 | extern void smp_call_function_interrupt(struct pt_regs *); | 109 | extern void smp_call_function_interrupt(struct pt_regs *); |