[RFC/PATCH] powerpc: Rewrite IO allocation & mapping on powerpc64

Benjamin Herrenschmidt benh at kernel.crashing.org
Mon May 14 18:03:58 EST 2007


On Mon, 2007-05-14 at 17:53 +1000, Benjamin Herrenschmidt wrote:

>  - Handle allocation constraints of PIO for all bridges including
>    hot plugged ones within the 2GB space reserved for IO ports,
>    so that devices on hotplugged busses will now work with drivers
>    that assume IO ports fit in an int. 

Olof, Arnd, that should fix your problem but it's not 2.6.22 material.
I'll post a separate patch for 2.6.22 that does a temporary band aid,
basically calling pci_setup_phb_io() + remap_bus_range() rather than
pci_setup_phb_io_dynamic() from the of_device/PCI code and add a
spinlock to reserve_phb_iospace().

I found also a couple of other nits for which I'll do patches for
2.6.22. For example, we don't mask out the "tokens" at the top of IO
addresses in iounmap() which means it probably doesn't work on cell.
Ouch.

There's a number of other issues that my bigger patch fixes for which I
won't bother with a 2.6.22 backport though.

Cheers,
Ben.





More information about the Linuxppc-dev mailing list