diff options
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/kernel/apic/io_apic.c | 23 |
1 files changed, 4 insertions, 19 deletions
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c index 53243ca7816d..75265ab83b17 100644 --- a/arch/x86/kernel/apic/io_apic.c +++ b/arch/x86/kernel/apic/io_apic.c | |||
@@ -140,27 +140,10 @@ static struct irq_pin_list *get_one_free_irq_2_pin(int node) | |||
140 | 140 | ||
141 | /* irq_cfg is indexed by the sum of all RTEs in all I/O APICs. */ | 141 | /* irq_cfg is indexed by the sum of all RTEs in all I/O APICs. */ |
142 | #ifdef CONFIG_SPARSE_IRQ | 142 | #ifdef CONFIG_SPARSE_IRQ |
143 | static struct irq_cfg irq_cfgx[] = { | 143 | static struct irq_cfg irq_cfgx[NR_IRQS_LEGACY]; |
144 | #else | 144 | #else |
145 | static struct irq_cfg irq_cfgx[NR_IRQS] = { | 145 | static struct irq_cfg irq_cfgx[NR_IRQS]; |
146 | #endif | 146 | #endif |
147 | [0] = { .vector = IRQ0_VECTOR, }, | ||
148 | [1] = { .vector = IRQ1_VECTOR, }, | ||
149 | [2] = { .vector = IRQ2_VECTOR, }, | ||
150 | [3] = { .vector = IRQ3_VECTOR, }, | ||
151 | [4] = { .vector = IRQ4_VECTOR, }, | ||
152 | [5] = { .vector = IRQ5_VECTOR, }, | ||
153 | [6] = { .vector = IRQ6_VECTOR, }, | ||
154 | [7] = { .vector = IRQ7_VECTOR, }, | ||
155 | [8] = { .vector = IRQ8_VECTOR, }, | ||
156 | [9] = { .vector = IRQ9_VECTOR, }, | ||
157 | [10] = { .vector = IRQ10_VECTOR, }, | ||
158 | [11] = { .vector = IRQ11_VECTOR, }, | ||
159 | [12] = { .vector = IRQ12_VECTOR, }, | ||
160 | [13] = { .vector = IRQ13_VECTOR, }, | ||
161 | [14] = { .vector = IRQ14_VECTOR, }, | ||
162 | [15] = { .vector = IRQ15_VECTOR, }, | ||
163 | }; | ||
164 | 147 | ||
165 | void __init io_apic_disable_legacy(void) | 148 | void __init io_apic_disable_legacy(void) |
166 | { | 149 | { |
@@ -181,6 +164,8 @@ int __init arch_early_irq_init(void) | |||
181 | node= cpu_to_node(boot_cpu_id); | 164 | node= cpu_to_node(boot_cpu_id); |
182 | 165 | ||
183 | for (i = 0; i < count; i++) { | 166 | for (i = 0; i < count; i++) { |
167 | if (i < nr_legacy_irqs) | ||
168 | cfg[i].vector = IRQ0_VECTOR + i; | ||
184 | desc = irq_to_desc(i); | 169 | desc = irq_to_desc(i); |
185 | desc->chip_data = &cfg[i]; | 170 | desc->chip_data = &cfg[i]; |
186 | zalloc_cpumask_var_node(&cfg[i].domain, GFP_NOWAIT, node); | 171 | zalloc_cpumask_var_node(&cfg[i].domain, GFP_NOWAIT, node); |