Merge branch 'x86/asm' into x86/apic, to resolve a conflict
authorIngo Molnar <mingo@kernel.org>
Mon, 11 May 2015 14:05:09 +0000 (16:05 +0200)
committerIngo Molnar <mingo@kernel.org>
Mon, 11 May 2015 14:05:09 +0000 (16:05 +0200)
Conflicts:
arch/x86/kernel/apic/io_apic.c
arch/x86/kernel/apic/vector.c

Signed-off-by: Ingo Molnar <mingo@kernel.org>
1  2 
arch/x86/Kconfig
arch/x86/include/asm/hw_irq.h
arch/x86/include/asm/irq_vectors.h
arch/x86/kernel/acpi/boot.c
arch/x86/kernel/apic/vector.c
arch/x86/kernel/smpboot.c
drivers/iommu/intel_irq_remapping.c
include/linux/intel-iommu.h

Simple merge
Simple merge
Simple merge
Simple merge
index 426496862be0765c7af89673fa37d8c3f7d0983a,82d44c314a3f9b7888b8cec42e7c1514e50ae056..2766747e1a3b316d65be99b0d3f6feb4a021a533
@@@ -358,46 -258,8 +358,43 @@@ int __init arch_probe_nr_irqs(void
        return nr_legacy_irqs();
  }
  
-        * IRQ0_VECTOR to IRQ15_VECTOR for all cpu's.
 +#ifdef        CONFIG_X86_IO_APIC
 +static void init_legacy_irqs(void)
 +{
 +      int i, node = cpu_to_node(0);
 +      struct apic_chip_data *data;
 +
 +      /*
 +       * For legacy IRQ's, start with assigning irq0 to irq15 to
-               /*
-                * For legacy IRQ's, start with assigning irq0 to irq15 to
-                * IRQ0_VECTOR to IRQ15_VECTOR for all cpu's.
-                */
-               data->cfg.vector = IRQ0_VECTOR + i;
++       * ISA_IRQ_VECTOR(i) for all cpu's.
 +       */
 +      for (i = 0; i < nr_legacy_irqs(); i++) {
 +              data = legacy_irq_data[i] = alloc_apic_chip_data(node);
 +              BUG_ON(!data);
++
++              data->cfg.vector = ISA_IRQ_VECTOR(i);
 +              cpumask_setall(data->domain);
 +              irq_set_chip_data(i, data);
 +      }
 +}
 +#else
 +static void init_legacy_irqs(void) { }
 +#endif
 +
  int __init arch_early_irq_init(void)
  {
 +      init_legacy_irqs();
 +
 +      x86_vector_domain = irq_domain_add_tree(NULL, &x86_vector_domain_ops,
 +                                              NULL);
 +      BUG_ON(x86_vector_domain == NULL);
 +      irq_set_default_host(x86_vector_domain);
 +
 +      arch_init_msi_domain(x86_vector_domain);
 +      arch_init_htirq_domain(x86_vector_domain);
 +
 +      BUG_ON(!alloc_cpumask_var(&vector_cpumask, GFP_KERNEL));
 +
        return arch_early_ioapic_init();
  }
  
Simple merge
Simple merge
Simple merge