diff options
author | Ley Foon Tan <lftan@altera.com> | 2015-12-04 16:21:21 -0600 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2015-12-04 16:21:21 -0600 |
commit | 99496bd2971fc378226ad4413e5b72c4545714bd (patch) | |
tree | 7c078837024c5ae69c99510de026544d546e65a7 /drivers/pci | |
parent | ea1d3795f65e14619642b5f67382800f58e43f3d (diff) | |
download | op-kernel-dev-99496bd2971fc378226ad4413e5b72c4545714bd.zip op-kernel-dev-99496bd2971fc378226ad4413e5b72c4545714bd.tar.gz |
PCI: altera: Fix error when INTx is 4
PCI interrupt lines start at 1, not at 0. So, creates additional one
interrupt when register for irq domain.
Error when PCIe devices have 4 INTx:
WARNING: CPU: 1 PID: 1 at kernel/irq/irqdomain.c:280
irq_domain_associate+0x17c/0x1cc()
error: hwirq 0x4 is too large for dummy
Tested on Ethernet adapter card with multi-functions.
Signed-off-by: Ley Foon Tan <lftan@altera.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/host/pcie-altera.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/pci/host/pcie-altera.c b/drivers/pci/host/pcie-altera.c index 072255d..99da549 100644 --- a/drivers/pci/host/pcie-altera.c +++ b/drivers/pci/host/pcie-altera.c @@ -467,7 +467,7 @@ static int altera_pcie_init_irq_domain(struct altera_pcie *pcie) struct device_node *node = dev->of_node; /* Setup INTx */ - pcie->irq_domain = irq_domain_add_linear(node, INTX_NUM, + pcie->irq_domain = irq_domain_add_linear(node, INTX_NUM + 1, &intx_domain_ops, pcie); if (!pcie->irq_domain) { dev_err(dev, "Failed to get a INTx IRQ domain\n"); |