[RFC/PATCH 1/3] powerpc: add ioremap_bat() function for setting up BAT translated IO regions.

Kumar Gala galak at kernel.crashing.org
Thu Aug 7 11:49:22 EST 2008


On Aug 6, 2008, at 5:28 PM, Benjamin Herrenschmidt wrote:

>
>> there is a bunch of error checking and difference in semantics that
>> you need to fix.  I think introduce a new API for this is silly,
>> especially since we expect there to only be one actual invocation of
>> the API for serial console access.
>
> Not necessarily....
>
> There's another aspect to BAT mappings here. First, they should be
> permanent (ie, not unmappable). That way, we have ioremap just use
> an existing BAT mapping when asked for a device that is covered
> by a BAT. This allows to have platform code do something like setup
> a BAT over a bunch of SOC registers or over a device, to automagically
> get drivers doing ioremap to that area benefit from it.

why should they be permanent.. We could implement reference counting  
around the regions and free BATs if the count = 0.

I'm more concerned about this being implemented around the existing  
ioremap core in __ioremap().  We can easily use a flag bit to say use  
"large mappings" or the fact that mem_init_done == 0.

- k



More information about the Linuxppc-dev mailing list