]> git.baikalelectronics.ru Git - kernel.git/commit
PCI: xilinx: Convert to MSI domains
authorMarc Zyngier <maz@kernel.org>
Tue, 30 Mar 2021 15:11:36 +0000 (16:11 +0100)
committerLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Tue, 20 Apr 2021 13:11:21 +0000 (14:11 +0100)
commit774afc25d78d21688fd3456967482ae99981b0d3
tree449a2fd47d2e9890b6ab93eb1e6720aa3f9f4ac7
parent68a3ed8a24fd1fbb4a209ddf61f22cc6202b111e
PCI: xilinx: Convert to MSI domains

In anticipation of the removal of the msi_controller structure, convert
the ancient xilinx host controller driver to MSI domains.

We end-up with the usual two domain structure, the top one being a
generic PCI/MSI domain, the bottom one being xilinx-specific and handling
the actual HW interrupt allocation.

This allows us to fix some of the most appaling MSI programming, where
the message programmed in the device is the virtual IRQ number instead
of the allocated vector number. The allocator is also made safe with
a mutex. This should allow support for MultiMSI, but I decided not to
even try, since I cannot test it.

Link: https://lore.kernel.org/r/20210330151145.997953-6-maz@kernel.org
Tested-by: Bharat Kumar Gogada <bharatku@xilinx.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/pci/controller/Kconfig
drivers/pci/controller/pcie-xilinx.c