]> git.baikalelectronics.ru Git - kernel.git/commit
s390/pci: PCI adapter interrupts for MSI/MSI-X
authorJan Glauber <jang@linux.vnet.ibm.com>
Thu, 29 Nov 2012 12:05:05 +0000 (13:05 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Fri, 30 Nov 2012 16:47:21 +0000 (17:47 +0100)
commitac814f02a451be57a2b6d457e3d62fe5a9aea602
tree2788d7c8fe3e90333555435c7539d9f31d2c520e
parent063384914e852ed502b791e691844b96ec8c0647
s390/pci: PCI adapter interrupts for MSI/MSI-X

Support PCI adapter interrupts using the Single-IRQ-mode. Single-IRQ-mode
disables an adapter IRQ automatically after delivering it until the SIC
instruction enables it again. This is used to reduce the number of IRQs
for streaming workloads.

Up to 64 MSI handlers can be registered per PCI function.
A hash table is used to map interrupt numbers to MSI descriptors.
The interrupt vector is scanned using the flogr instruction.
Only MSI/MSI-X interrupts are supported, no legacy INTs.

Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/include/asm/hw_irq.h [new file with mode: 0644]
arch/s390/include/asm/irq.h
arch/s390/include/asm/isc.h
arch/s390/include/asm/pci.h
arch/s390/kernel/irq.c
arch/s390/pci/Makefile
arch/s390/pci/pci.c
arch/s390/pci/pci_clp.c
arch/s390/pci/pci_msi.c [new file with mode: 0644]
drivers/pci/msi.c
include/linux/irq.h