2GB address space limit on 32-bit PowerPC Macintosh

Mark A. Greer mgreer at mvista.com
Tue May 17 06:43:36 EST 2005

Dan Malek wrote:

> On May 16, 2005, at 2:06 PM, Mark A. Greer wrote:
>> Oops...
>> /me unintentionally stepped into the middle of a flame war  :)
> Just pee on it :-)


>> To be clear, "offender" == board that has an io_block_mapping below 
>> the 3 GB line.
> That is one of the obvious changes. You are likely to find some other 
> assumptions
> that may need attention.  The problem with io_block_mapping is you 
> just can't
> remove it, you have to fix up all of the code that is based on the 
> assumption these
> spaces are mapped.  You are likely to find yourself in a situation 
> where you need
> access to some board control registers before VM is set up and you can 
> call
> ioremap().  So, you will find yourself doing some hack in head.S to 
> map BAT
> registers to get access to this, which is exactly what 
> io_block_mapping() does,
> only in a way that is obvious :-)

I think I understand all of that.  I wasn't clear in my email.  I was 
talking about "fixing" such that 3GB works (i.e., io_block_mapping are 
above 3GB virt, if possible) not "fixing" such that we can get rid of 
io_block_mapping altogether.  We still need io_block_mapping for exactly 
the reasons you state.

I need to learn how to write better emails...  :(


More information about the Linuxppc-dev mailing list