Thread (58 messages) 58 messages, 11 authors, 2007-12-03

Re: [PATCH 12/24] powerpc: 4xx PLB to PCI Express support

From: Josh Boyer <hidden>
Date: 2007-12-02 14:17:34

On Sun, 2 Dec 2007 13:32:28 +0100
Stefan Roese [off-list ref] wrote:
Hi Ben,

On Friday 30 November 2007, Benjamin Herrenschmidt wrote:
quoted
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.
As already mentioned I'm experiencing some problems with this current version. 
At least what's available in Josh's 2.6.25-candidates branch. The kernel 
crashes in the first ppc4xx_pciex_read_config() call upon (after I fixed the 
small problem mentioned further down below):

	BUG_ON(hose != port->hose);

So before digging into this deeper, I wanted to check if you don't have a 
slightly "better" version which passed your tests with the sky2 PCIe card.
These should be the latest versions that Ben sent out.  I plan on
applying newer versions to that branch as they come out, which means
the git branch will probably reset often for a bit.

I have some other patches I want to pull into there as well anyway.

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