diff options
| -rw-r--r-- | arch/x86/include/asm/io_apic.h | 2 | ||||
| -rw-r--r-- | arch/x86/kernel/apic/io_apic.c | 10 |
2 files changed, 5 insertions, 7 deletions
diff --git a/arch/x86/include/asm/io_apic.h b/arch/x86/include/asm/io_apic.h index 7c7c16cde1f8..84fdd5110948 100644 --- a/arch/x86/include/asm/io_apic.h +++ b/arch/x86/include/asm/io_apic.h | |||
| @@ -143,8 +143,6 @@ extern int noioapicreroute; | |||
| 143 | /* 1 if the timer IRQ uses the '8259A Virtual Wire' mode */ | 143 | /* 1 if the timer IRQ uses the '8259A Virtual Wire' mode */ |
| 144 | extern int timer_through_8259; | 144 | extern int timer_through_8259; |
| 145 | 145 | ||
| 146 | extern void io_apic_disable_legacy(void); | ||
| 147 | |||
| 148 | /* | 146 | /* |
| 149 | * If we use the IO-APIC for IRQ routing, disable automatic | 147 | * If we use the IO-APIC for IRQ routing, disable automatic |
| 150 | * assignment of PCI IRQ's. | 148 | * assignment of PCI IRQ's. |
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c index 1704cd82db5f..3592a72f3f0a 100644 --- a/arch/x86/kernel/apic/io_apic.c +++ b/arch/x86/kernel/apic/io_apic.c | |||
| @@ -143,11 +143,6 @@ static struct irq_cfg irq_cfgx[NR_IRQS_LEGACY]; | |||
| 143 | static struct irq_cfg irq_cfgx[NR_IRQS]; | 143 | static struct irq_cfg irq_cfgx[NR_IRQS]; |
| 144 | #endif | 144 | #endif |
| 145 | 145 | ||
| 146 | void __init io_apic_disable_legacy(void) | ||
| 147 | { | ||
| 148 | nr_irqs_gsi = 0; | ||
| 149 | } | ||
| 150 | |||
| 151 | int __init arch_early_irq_init(void) | 146 | int __init arch_early_irq_init(void) |
| 152 | { | 147 | { |
| 153 | struct irq_cfg *cfg; | 148 | struct irq_cfg *cfg; |
| @@ -156,6 +151,11 @@ int __init arch_early_irq_init(void) | |||
| 156 | int node; | 151 | int node; |
| 157 | int i; | 152 | int i; |
| 158 | 153 | ||
| 154 | if (!legacy_pic->nr_legacy_irqs) { | ||
| 155 | nr_irqs_gsi = 0; | ||
| 156 | io_apic_irqs = ~0UL; | ||
| 157 | } | ||
| 158 | |||
| 159 | cfg = irq_cfgx; | 159 | cfg = irq_cfgx; |
| 160 | count = ARRAY_SIZE(irq_cfgx); | 160 | count = ARRAY_SIZE(irq_cfgx); |
| 161 | node= cpu_to_node(boot_cpu_id); | 161 | node= cpu_to_node(boot_cpu_id); |
