Linux Kernels

PCI: xilinx: Don't call pci_fixup_irqs() on Microblaze

This change “PCI: xilinx: Don't call pci_fixup_irqs() on Microblaze” (commit 2c51391) in Linux kernel is authored by Bharat Kumar Gogada <bharat.kumar.gogada [at] xilinx.com> on Thu Feb 11 21:58:09 2016 +0530.

Description of "PCI: xilinx: Don't call pci_fixup_irqs() on Microblaze"

The change “PCI: xilinx: Don't call pci_fixup_irqs() on Microblaze” introduces changes as follows.

PCI: xilinx: Don't call pci_fixup_irqs() on Microblaze

The Xilinx AXI PCIe Host Bridge Soft IP driver was previously only
supported on ARM (in particular, on ARCH_ZYNC), and pci_fixup_irqs() is
available there.  But Microblaze will do IRQ fixup in pcibios_add_device(),
so pci_fixup_irqs() is not available on Microblaze.

Don't call pci_fixup_irqs() on Microblaze, so the driver can work on both
Zynq and Microblaze Architectures.

[bhelgaas: revise changelog to show similarity to bdb8a1844f31 ("PCI: iproc: Call pci_fixup_irqs() for ARM64 as well as ARM")]
Signed-off-by: Bharat Kumar Gogada <bharatku@xilinx.com>
Signed-off-by: Ravi Kiran Gummaluri <rgummal@xilinx.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Michal Simek <michal.simek@xilinx.com>

Linux kernel releases containing commit 2c51391

The Linux kernel releases containing this commit are as follows.

Linux kernel code changes from "PCI: xilinx: Don't call pci_fixup_irqs() on Microblaze"

There are 2 lines of Linux source code added/deleted in this change. Code changes to Linux kernel are as follows.

 drivers/pci/host/pcie-xilinx.c | 2 ++
 1 file changed, 2 insertions(+)
 
diff --git a/drivers/pci/host/pcie-xilinx.c b/drivers/pci/host/pcie-xilinx.c
index d21763d1a637..65f0fe0c2eaf 100644
--- a/drivers/pci/host/pcie-xilinx.c
+++ b/drivers/pci/host/pcie-xilinx.c
@@ -705,7 +705,9 @@ static int xilinx_pcie_probe(struct platform_device *pdev)
 #endif
 	pci_scan_child_bus(bus);
 	pci_assign_unassigned_bus_resources(bus);
+#ifndef CONFIG_MICROBLAZE
 	pci_fixup_irqs(pci_common_swizzle, of_irq_parse_and_map_pci);
+#endif
 	pci_bus_add_devices(bus);
 	platform_set_drvdata(pdev, port);
 

The commit for this change in Linux stable tree is 2c51391 (patch).

Last modified: 2020/01/11 09:36