Refreshed all patches. Removed: - 030-PCI-dwc-skip-MSI-init-if-MSIs-have-been-explicitly-d.patch Altered: - 366-netfilter-nf_flow_table-clean-up-and-fix-dst-handlin.patch - 650-netfilter-add-xt_OFFLOAD-target.patch - 662-remove_pfifo_fast.patch - 332-arc-add-OWRTDTB-section.patch - 100-clocksource-drivers-arch_timer-Workaround-for-Allwin.patch - 702-phy_add_aneg_done_function.patch New symbols: - ARC_IRQ_NO_AUTOSAVE - SUN50I_ERRATUM_UNKNOWN1 Compile-tested: cns3xxx, imx6, sunxi Runtime-tested: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>master
parent
5387bc9cbb
commit
8df12d76c6
@ -1,48 +0,0 @@ |
|||||||
From 26a3cdb73644090ff9a2fb68775ef61d361a8883 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Lucas Stach <l.stach@pengutronix.de>
|
|
||||||
Date: Wed, 27 Feb 2019 17:52:19 +0100
|
|
||||||
Subject: [PATCH] PCI: dwc: skip MSI init if MSIs have been explicitly disabled
|
|
||||||
|
|
||||||
commit 3afc8299f39a27b60e1519a28e18878ce878e7dd upstream.
|
|
||||||
|
|
||||||
Since 7c5925afbc58 (PCI: dwc: Move MSI IRQs allocation to IRQ domains
|
|
||||||
hierarchical API) the MSI init claims one of the controller IRQs as a
|
|
||||||
chained IRQ line for the MSI controller. On some designs, like the i.MX6,
|
|
||||||
this line is shared with a PCIe legacy IRQ. When the line is claimed for
|
|
||||||
the MSI domain, any device trying to use this legacy IRQs will fail to
|
|
||||||
request this IRQ line.
|
|
||||||
|
|
||||||
As MSI and legacy IRQs are already mutually exclusive on the DWC core,
|
|
||||||
as the core won't forward any legacy IRQs once any MSI has been enabled,
|
|
||||||
users wishing to use legacy IRQs already need to explictly disable MSI
|
|
||||||
support (usually via the pci=nomsi kernel commandline option). To avoid
|
|
||||||
any issues with MSI conflicting with legacy IRQs, just skip all of the
|
|
||||||
DWC MSI initalization, including the IRQ line claim, when MSI is disabled.
|
|
||||||
|
|
||||||
Fixes: 7c5925afbc58 ("PCI: dwc: Move MSI IRQs allocation to IRQ domains hierarchical API")
|
|
||||||
Tested-by: Tim Harvey <tharvey@gateworks.com>
|
|
||||||
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
|
|
||||||
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
|
|
||||||
Acked-by: Gustavo Pimentel <gustavo.pimentel@synopsys.com>
|
|
||||||
Cc: stable@vger.kernel.org
|
|
||||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
||||||
---
|
|
||||||
drivers/pci/controller/dwc/pcie-designware-host.c | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pci/controller/dwc/pcie-designware-host.c
|
|
||||||
index 0fa9e8fdce66..b56e22262a77 100644
|
|
||||||
--- a/drivers/pci/controller/dwc/pcie-designware-host.c
|
|
||||||
+++ b/drivers/pci/controller/dwc/pcie-designware-host.c
|
|
||||||
@@ -439,7 +439,7 @@ int dw_pcie_host_init(struct pcie_port *pp)
|
|
||||||
if (ret)
|
|
||||||
pci->num_viewport = 2;
|
|
||||||
|
|
||||||
- if (IS_ENABLED(CONFIG_PCI_MSI)) {
|
|
||||||
+ if (IS_ENABLED(CONFIG_PCI_MSI) && pci_msi_enabled()) {
|
|
||||||
/*
|
|
||||||
* If a specific SoC driver needs to change the
|
|
||||||
* default number of vectors, it needs to implement
|
|
||||||
--
|
|
||||||
2.17.1
|
|
||||||
|
|
Loading…
Reference in new issue