Thread (19 messages) flat view 19 messages, 6 authors, 2007-08-12

Re: pci in arch/powerpc vs arch/ppc

From: Scott Wood <hidden>
Date: 2007-08-07 15:20:29

Alexandros Kostopoulos wrote:
Except from some macros arch/powerpc/include/asm/io.h / mpc8260_pci9.h, 
I  can seem to find anywhere the code regarding PCI Erratum 9. The 
defined  macros(in io.h) for read/write are sufficient as a workaround 
for PCI9?  Who does DMA and register initialization for this (it used to 
be done in  arch/ppc/syslib/m8260_pci_erratum9.c in arc/ppc). Maybe 
u-boot or the  bootwrapper?
I don't think the workaround exists yet in arch/powerpc, despite the 
config option.
Another question regarding resource allocation: when  
alloc_resource(pci_32.c), called from pcibios_allocate_resources(), 
during  pcibios init, attempts to allocate resources using 
request_resource(), the  request fails. This seems to happen because the 
previously scanned PCI  devices request resources in the form, e.g. 
00000- 0000f (i.e. starting  from zero), and this should be mapped 
somewhere else in cpu mem space. My  question (in order to find my bug) 
is, who performs this mapping, from PCI  space to CPU space, the kernel 
(and if yes, where?) or the host bridge (in  which case, I've probably 
failed to configure it properly).
If the error message is the one I'm thinking of (it always helps to post 
the actual messages), that's normal for when the PCI bus hasn't been 
probed by the firmware.  Linux first tries to use the BARs as they're 
already set, which will obviously fail because they haven't been set, 
and then it will properly allocated them.  It's harmless verbosity, 
though it'd be nice to have a flag to tell the PCI layer to not bother 
trying to preserve any existing BARs.

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