[PATCH v2 0/8] of: Handle multi-parent version of msi-parent & msi-map

From: Marc Zyngier
Date: Tue Oct 06 2015 - 13:06:30 EST


Now that we have a useable and documented version of msi-parent that
can deal with multiple parenting, we can properly handle it in the
kernel. This leads to a new OF helper, some rework in the PCI and
platform layers, as well as a small patch for the ITS driver, which is
the only thing in the kernel requirering this functionality so far.

On top of that, the msi-map property also offers a new feature, which
is that ability to have a per-device MSI controller (instead of having
a global one). The last four patches enable this.

These patches are on top of David Daney's series:

http://lists.infradead.org/pipermail/linux-arm-kernel/2015-October/373986.html

(of_msi_map_rid is a dependency), and has been tested on 4.3-rc3,
using both platform and PCI MSI devices.

* From the initial version
- Dropped the of parsing patch
- Built on top of David's series to reuse of_msi_map_rid
- New per-device PCI/MSI domain assignment hook
- Parse msi-map at bus probing time and populate the msi_domain field

Marc Zyngier (8):
of/irq: Add support code for multi-parent version of "msi-parent"
of/irq: Use of_msi_get_domain instead of open-coded "msi-parent"
parsing
PCI/MSI: Use of_msi_get_domain instead of open-coded "msi-parent"
parsing
irqchip/gic-v3-its: Parse new version of msi-parent property
of/irq: Split of_msi_map_rid to reuse msi-map lookup
of/irq: Use the msi-map property to provide device-specific MSI domain
PCI: Add per-device MSI domain hook
PCI/MSI: Allow the MSI domain to be device-specific

drivers/irqchip/irq-gic-v3-its-platform-msi.c | 18 ++-
drivers/of/irq.c | 151 ++++++++++++++++++++------
drivers/pci/msi.c | 17 +++
drivers/pci/of.c | 13 +--
drivers/pci/probe.c | 43 +++++++-
include/linux/msi.h | 6 +
include/linux/of_irq.h | 16 +++
7 files changed, 214 insertions(+), 50 deletions(-)

--
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/