[PATCH V7 1/3] powerpc/pci: Make sure ISA IO base is not zero

Jia Hongtao-B38951 B38951 at freescale.com
Thu Aug 16 13:37:08 EST 2012



> -----Original Message-----
> From: Benjamin Herrenschmidt [mailto:benh at kernel.crashing.org]
> Sent: Thursday, August 16, 2012 6:43 AM
> To: Wood Scott-B07421
> Cc: Jia Hongtao-B38951; linuxppc-dev at lists.ozlabs.org;
> galak at kernel.crashing.org; Li Yang-R58472; Wood Scott-B07421
> Subject: Re: [PATCH V7 1/3] powerpc/pci: Make sure ISA IO base is not
> zero
> 
> On Wed, 2012-08-15 at 16:57 -0500, Scott Wood wrote:
> > Is there no lasting remnant of that temporary wrong isa_io_base?  We
> > won't have I/O resources that were calculated relative to that, which
> > stop working once isa_io_base changes?  Or does that happen later,
> > after this function has been called on all buses (and would that
> > continue to be the case if we change the PCI bus to a platform device)?
> 
> If you continue creating your PCI busses all at once early on you'll be
> fine. The platform device business is going to break that (and other
> things as well btw, such as pci_final_fixup).

I have already done some investigation and the sequence of fixup (including
early, header, final) will not be changed in platform driver.

We register and init PCI controllers as platform devices at arch_initcall
stage and PCI scanning (pcibios_init) is at subsys_initcall stage in which
early and header fixup will be done in right sequence. The final fixup will
be start at rootfs_initcall stage which is later than early and header fixup.

- Hongtao.

> 
> Maybe it's time to contemplate doing something more like ppc64 and
> reserve a piece of virtual address space (I know there isn't much, so
> make it 64k per bus max) and just map the busses in there with the first
> 64k being reserved for the ISA stuff if it exists ?
> 
> Cheers,
> Ben.
> 
> 



More information about the Linuxppc-dev mailing list