|
@@ -72,8 +72,13 @@ struct irq_domain *pci_host_bridge_of_msi_domain(struct pci_bus *bus)
|
|
|
|
|
|
/* Start looking for a phandle to an MSI controller. */
|
|
/* Start looking for a phandle to an MSI controller. */
|
|
np = of_parse_phandle(bus->dev.of_node, "msi-parent", 0);
|
|
np = of_parse_phandle(bus->dev.of_node, "msi-parent", 0);
|
|
|
|
+
|
|
|
|
+ /*
|
|
|
|
+ * If we don't have an msi-parent property, look for a domain
|
|
|
|
+ * directly attached to the host bridge.
|
|
|
|
+ */
|
|
if (!np)
|
|
if (!np)
|
|
- return NULL;
|
|
|
|
|
|
+ np = bus->dev.of_node;
|
|
|
|
|
|
d = irq_find_matching_host(np, DOMAIN_BUS_PCI_MSI);
|
|
d = irq_find_matching_host(np, DOMAIN_BUS_PCI_MSI);
|
|
if (d)
|
|
if (d)
|