lkml.org 
[lkml]   [2015]   [Nov]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v6 5/7] PCI: irqdomain: Look up IRQ domain by fwnode_handle
    Date
    From: Jake Oshins <jakeo@microsoft.com>

    This patch adds a second way of finding an IRQ domain associated with
    a root PCI bus. After looking to see if one can be found through
    the OF tree, it attempts to look up the IRQ domain through an
    fwnode_handle stored in the pci_sysdata struct.

    Signed-off-by: Jake Oshins <jakeo@microsoft.com>
    ---
    drivers/pci/probe.c | 14 ++++++++++++++
    1 file changed, 14 insertions(+)

    diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
    index f441d1b..1bdaa37 100644
    --- a/drivers/pci/probe.c
    +++ b/drivers/pci/probe.c
    @@ -671,6 +671,20 @@ static struct irq_domain *pci_host_bridge_msi_domain(struct pci_bus *bus)
    */
    d = pci_host_bridge_of_msi_domain(bus);

    +#ifdef CONFIG_PCI_MSI_IRQ_DOMAIN
    + /*
    + * If no IRQ domain was found via the OF tree, try looking it up
    + * directly through the fwnode_handle.
    + */
    + if (!d) {
    + struct fwnode_handle *fwnode = pci_root_bus_fwnode(bus);
    +
    + if (fwnode)
    + d = irq_find_matching_fwnode(fwnode,
    + DOMAIN_BUS_PCI_MSI);
    + }
    +#endif
    +
    return d;
    }

    --
    1.9.1


    \
     
     \ /
      Last update: 2015-11-02 23:01    [W:5.780 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site