Message ID | 639e975f-1b3a-4f85-9a40-13fe2473fc28@xenosoft.de (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Bjorn Helgaas |
Headers | show |
On Fri, Mar 16, 2018 at 01:55:36PM +0100, Christian Zigotzky wrote: > Bjorn Helgaas created a patch for making PCI_SCAN_ALL_PCIE_DEVS work for > Root Ports as well as Downstream. Previously PCI_SCAN_ALL_PCIE_DEVS (set by > quirks or the "pci=pcie_scan_all" > kernel parameter) only affected Switch Downstream Ports, not Root Ports. The > problem is, that we have to add always the boot argument "pci=pcie_scan_all" > for using Bjorn's improvements. Without the boot argument > "pci=pcie_scan_all", the kernel doesn't boot on P.A. Semi boards with SB600 > chipset (SB600 chipset is connected via PCIe x4 to the P.A. Semi’s > PA6T-1682M System-on-a-Chip) because the kernel can't find any drives > connected to the SB600 anymore. Olof Johansson has created a patch for > executing "pci=pcie_scan_all" automatically on P.A. Semi boards. With his > patch, we don't need to add 'pci=pcie_scan_all' to the kernel boot arguments > anymore. The patch looks fine, but I need a signed-off-by line before I can apply it. See https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst > --- > > arch/powerpc/platforms/pasemi/pci.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/powerpc/platforms/pasemi/pci.c > b/arch/powerpc/platforms/pasemi/pci.c > index 5ff6108..ea54ed2 100644 > --- a/arch/powerpc/platforms/pasemi/pci.c > +++ b/arch/powerpc/platforms/pasemi/pci.c > @@ -224,6 +224,8 @@ void __init pas_pci_init(void) > return; > } > > + pci_set_flags(PCI_SCAN_ALL_PCIE_DEVS); > + > for (np = NULL; (np = of_get_next_child(root, np)) != NULL;) > if (np->name && !strcmp(np->name, "pxp") && !pas_add_bridge(np)) > of_node_get(np); > > -- > >
diff --git a/arch/powerpc/platforms/pasemi/pci.c b/arch/powerpc/platforms/pasemi/pci.c index 5ff6108..ea54ed2 100644 --- a/arch/powerpc/platforms/pasemi/pci.c +++ b/arch/powerpc/platforms/pasemi/pci.c @@ -224,6 +224,8 @@ void __init pas_pci_init(void) return; } + pci_set_flags(PCI_SCAN_ALL_PCIE_DEVS); + for (np = NULL; (np = of_get_next_child(root, np)) != NULL;) if (np->name && !strcmp(np->name, "pxp") && !pas_add_bridge(np)) of_node_get(np);