diff options
author | Marc Zyngier <maz@kernel.org> | 2021-03-30 18:11:44 +0300 |
---|---|---|
committer | Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> | 2021-04-20 16:11:22 +0300 |
commit | 61af69296cbadf4c88a1076a3b3e5572827b04c8 (patch) | |
tree | a4f0b8be3141207d979035c2c8b2dd9f59a43e5c /drivers/pci/msi.c | |
parent | 645e9c38383d7fcde2784ee537fa18ec9bed54d9 (diff) | |
download | linux-61af69296cbadf4c88a1076a3b3e5572827b04c8.tar.xz |
PCI/MSI: Document the various ways of ending up with NO_MSI
We have now three ways of ending up with NO_MSI being set.
Document them.
Link: https://lore.kernel.org/r/20210330151145.997953-14-maz@kernel.org
Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'drivers/pci/msi.c')
-rw-r--r-- | drivers/pci/msi.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c index d9c73c173c14..217dc9f0231f 100644 --- a/drivers/pci/msi.c +++ b/drivers/pci/msi.c @@ -871,8 +871,15 @@ static int pci_msi_supported(struct pci_dev *dev, int nvec) * Any bridge which does NOT route MSI transactions from its * secondary bus to its primary bus must set NO_MSI flag on * the secondary pci_bus. - * We expect only arch-specific PCI host bus controller driver - * or quirks for specific PCI bridges to be setting NO_MSI. + * + * The NO_MSI flag can either be set directly by: + * - arch-specific PCI host bus controller drivers (deprecated) + * - quirks for specific PCI bridges + * + * or indirectly by platform-specific PCI host bridge drivers by + * advertising the 'msi_domain' property, which results in + * the NO_MSI flag when no MSI domain is found for this bridge + * at probe time. */ for (bus = dev->bus; bus; bus = bus->parent) if (bus->bus_flags & PCI_BUS_FLAGS_NO_MSI) |