Thread (41 messages) 41 messages, 7 authors, 2018-06-04

Re: [PATCH] SB600 for the Nemo board has non-zero devices on non-root bus

From: Bjorn Helgaas <bhelgaas@google.com>
Date: 2017-11-29 19:47:20
Also in: linux-pci

On Wed, Nov 29, 2017 at 1:28 PM, Christian Zigotzky
[off-list ref] wrote:
On 23 November 2017 2:31PM, Michael Ellerman wrote:
quoted
Hi Christian,

Thanks for your patch.

Christian Zigotzky [off-list ref] writes:
quoted
Hi All,

Just a small patch for the P.A. Semi Nemo board:

-----

diff -rupN a/drivers/pci/probe.c b/drivers/pci/probe.c
--- a/drivers/pci/probe.c    2017-11-16 08:18:40.504012010 +0100
+++ b/drivers/pci/probe.c    2017-11-16 08:17:22.044368405 +0100
@@ -2219,6 +2219,8 @@ static int only_one_child(struct pci_bus
As this is a patch to the PCI code I can't merge it via the powerpc
tree. You would need to send it to linux-pci@vger.kernel.org.
quoted
       if (!parent || !pci_is_pcie(parent))
           return 0;
+    #ifndef CONFIG_PPC_PASEMI_NEMO
+    // SB600 for the Nemo board has non-zero devices on non-root bus.
       if (pci_pcie_type(parent) == PCI_EXP_TYPE_ROOT_PORT)
           return 1;
@@ -2231,6 +2233,7 @@ static int only_one_child(struct pci_bus
       if (parent->has_secondary_link &&
           !pci_has_flag(PCI_SCAN_ALL_PCIE_DEVS))
           return 1;
+    #endif
But the PCI maintainer is not going to accept a patch like this, which
adds a platform specific #ifdef in core code like this.

If you look at the rest of that file I don't think you'll find a single
#ifdef other than for generic configuration symbols.

Are you sure the PCI_SCAN_ALL_PCIE_DEVS logic doesn't work for you? It
sounds like it was added for exactly this problem.

cheers
Hi Michael,

Thanks for your reply. Sorry for my late answer. I removed the patch above
from the RC1 and compiled the RC1 again. Unfortunately without the patch,
the kernel doesn't recognize any drives and partitions. Do you have another
idea?
What happens if you boot RC1 with "pci=pcie_scan_all"?  If that works,
we do have some quirks that set that automatically, and we might be
able to add another one for the Nemo.

Can you collect the complete "lspci -vv" and dmesg output for this
system?  I'm curious about why it is special.

Bjorn
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help