Thread (9 messages) 9 messages, 4 authors, 2011-05-25

Re: Kernel cannot see PCI device

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2011-05-19 23:12:44

On Thu, 2011-05-19 at 11:58 -0600, Bjorn Helgaas wrote:
The scan below PCIX0 (bus 0001:00) doesn't find anything.  You really
need a powerpc expert to help here, but in their absence, my guess
would be something's wrong with config space access, so I would start
by just adding some printks to ppc4xx_probe_pcix_bridge() to see if
the rsrc_cfg address looks reasonable.  You might need a chip spec or
maybe you can compare it to the device tree (I have no idea what the
relation between the device tree and OF is).

You mentioned the u-boot "pci 2" command earlier.  It found a device
on bus 2, which means there must be at least one P2P bridge to get you
from bus 0 to bus 2.  So the output of "pci 0", "pci 1", "pci 80", and
"pci 81" (to compare with what Linux found) would be interesting.
Well, if it's PCIe, there's the "virtual" P2P bridge of the root
complex.

The question is on what PCIe is his device connected, the one that we
see or the one that's disabled in the device-tree.

In the former case, maybe something Linux does kills it. IE. we reset
and re-train the link on these chips afaik, at least from memory, check
what's happening in ppc4xx_pci.c there. Maybe the card doesn't like it
or we're doing something wrong....

In the later case, then something in the device-tree is saying Linux not
to touch that bridge, usually the "status" property.

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