mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-05 18:14:07 +08:00
[ARM] 5037/1: Orion: fix DNS323/Kurobox Pro PCI initialisation
Whereas most Orion 5x machine support code would initialise the PCI subsystem with nr_controllers in their struct hw_pci set to 2, the DNS323 and Kurobox Pro machine support code had nr_controllers set to 1. This was presumably done because on those two machines, the PCI(-X) controller (nr == 1) isn't used, requiring initialisation of only the PCIe controller (nr == 0.) However, not initialising the PCI(-X) controller on boards that don't use it leads to a situation where both the PCIe and the PCI(-X) controller think that their root bus is zero, and it messes up IRQ assignment. This patch changes the DNS323 and Kurobox Pro support code to always use nr_controllers == 2. Signed-off-by: Lennert Buytenhek <buytenh@marvell.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
b3a8b751c1
commit
bbdf1c1e58
@ -58,7 +58,7 @@ static int __init dns323_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
|
||||
}
|
||||
|
||||
static struct hw_pci dns323_pci __initdata = {
|
||||
.nr_controllers = 1,
|
||||
.nr_controllers = 2,
|
||||
.swizzle = pci_std_swizzle,
|
||||
.setup = orion5x_pci_sys_setup,
|
||||
.scan = orion5x_pci_sys_scan_bus,
|
||||
|
@ -138,7 +138,7 @@ static int __init kurobox_pro_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
|
||||
}
|
||||
|
||||
static struct hw_pci kurobox_pro_pci __initdata = {
|
||||
.nr_controllers = 1,
|
||||
.nr_controllers = 2,
|
||||
.swizzle = pci_std_swizzle,
|
||||
.setup = orion5x_pci_sys_setup,
|
||||
.scan = orion5x_pci_sys_scan_bus,
|
||||
|
Loading…
Reference in New Issue
Block a user