Re: [PATCH 12/24] powerpc: 4xx PLB to PCI Express support
From: Kumar Gala <hidden>
Date: 2007-11-30 09:18:16
On Nov 30, 2007, at 12:10 AM, Benjamin Herrenschmidt wrote:
This adds to the previous 2 patches the support for the 4xx PCI Express cells as found in the 440SPe revA, revB and 405EX. Unfortunately, due to significant differences between these, and other interesting "features" of those pieces of HW, the code isn't as simple as it is for PCI and PCI-X and some of the functions differ significantly between the 3 implementations. Thus, not only this code can only support those 3 implementations for now and will refuse to operate on any other, but there are added ifdef's to avoid the bloat of building a fairly large amount of code on platforms that don't need it. Also, this code currently only supports fully initializing root complex nodes, not endpoint. Some more code will have to be lifted from the arch/ppc implementation to add the endpoint support, though it's mostly differences in memory mapping, and the question on how to represent endpoint mode PCI in the device-tree is thus open. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> --- 440SPeA is untested, 440SPeB is slightly tested (with a sky2 network card on port 0 only for now) and 405EX is untested. arch/powerpc/Kconfig | 1 arch/powerpc/sysdev/Kconfig | 8 arch/powerpc/sysdev/ppc4xx_pci.c | 927 +++++++++++++++++++++++++++++ +++++++++- arch/powerpc/sysdev/ppc4xx_pci.h | 237 +++++++++ 4 files changed, 1172 insertions(+), 1 deletion(-)
Is it intentional that you dont support ppc_md.pci_exclude_device()? - k