• Andrew Morton's avatar
    [PATCH] ia64 MSI support · 9938e2c2
    Andrew Morton authored
    From: "Nguyen, Tom L" <tom.l.nguyen@intel.com>
    
    Adds MSI support for ia64.
    
    - Modified existing code in drivers/pci/msi.c and drivers/pci/msi.h to
      include MSI support on IA64 platform.
    
    - Based on the comments received from Zwane Mwaikambo and David Mosberger,
      this patch consolidates the vector allocators as
      assign_irq_vector(AUTO_ASSIGN) has the same semantics as
      ia64_alloc_vector() by converting the existing uses of ia64_alloc_vector()
      to assign_irq_vector(AUTO_ASSIGN).
    
    - Based on the comments received from Zwane Mwaikambo, this patch
      consolidates the semantics of vector allocator assign_irq_vector() in
      drivers/pci/msi.c into the relevant architecture's vector allocator
      assign_irq_vector() in arch/i386/kernel/io_apic.c.
    
    - Regarding vector allocation, this patch modifies the existing function
      assign_irq_vector() to maximize the number of allocated vectors to 188
      before going -ENOSPC.
    
    - Based on your comments, this patch creates <asm-i386/msi.h>,
      <asm-ia64/msi.h> and <asm-x86_64/msi.h>, includes <asm/msi.h> from within
      drivers/pci/msi.h and then places all the code which is currently under
      ifdef in msi.h into the relevant architecture's <asm/msi.h> file.
    
    - Based on your comments, this patch places pci_vector_resources() in
      existing drivers/pci/msi.c in the relevant architecture implementations
      such as into arch/.../pci/irq.c.
    9938e2c2
iosapic.c 20.6 KB