I hope somebody can shed some light on our problem. The summary is that when we use a pci-e switch, we don't see anything on the downstream side of the switch in Linux. U-Boot may or may not see the downstream side (details below).
We are using the stock canyonlands (460EX) board with both original and new kernels. We have the 1L port as an end-point and the 4L as a RC. We've purchased a PLX 8509 PCI-E Switch and PLX 8612 PCI-E Switch add-in cards. Each of them fits into the 4 lane port. We also have another COTS pci-e sata controller (our control if you will). sata card to the canyonlands, everything works correctly. This tells me that pci-e, discovery, etc are configured / working. sata to the 8509 and the 8509 to the canyonlands, u-boot will detect the sata card, but for whatever reason, Linux does not see it (via lspci or our own tool). sata to the 8612 and the 8612 to the canyonlands, u-boot does not see the card (and obviously linux does not see the card either). One more data point, we have an NI PCI-E GPIB controller. It has a pci-e to pci bridge on board. U-Boot sees the bridge, but again nothing on the downstream port. We have looked at all of these cases using a lecroy pci-e analyzer. In most cases the u-boot code looks to be doing the right thing. The 8612 being the only odd case. We did notice the pci-e bus number change on the analyzer from 3 to (I think 129) -- I still cannot explain this. 1) Do I have to add anything to the device tree for the switch (I did not believe that it was required) 2) Since it appears no switch/bridge downstream device is visible, is something needed in Linux to make these go? I checked both the u-boot and kernel config and saw nothing obvious other than enabling pci-e 3) Does u-boot require any special configuration to enable all these pci-e devices 4) Anything else to try? Thanks - ame _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot