[U-Boot] [PATCH v2] mpc86xx: set the DDR BATs after calculating true DDR size

Kumar Gala galak at kernel.crashing.org
Tue Mar 30 17:29:41 CEST 2010


On Mar 30, 2010, at 10:21 AM, Timur Tabi wrote:

> Kumar Gala wrote:
> 
>>> We still have the problem that, on a 1.5GB system, U-Boot will think that there are 1.5GB of DDR, but the BAT will be set to 1GB.  When U-Boot tries to relocate itself, it will machine check.
>>> 
>>> We need a way to tell U-Boot that we only have 1GB of DDR, but still have it tell Linux that we have 1.5GB of DDR.
>> 
>> is this situation you have today? (or just a concern?)
> 
> Just a concern.
> 
> Technically, we have the same problem on e500, except on e500 we use multiple TLBs to map the memory.  In theory, we need at most one TLB/BAT per DIMM slot, which means we would need four BATS on the MPC8641 HPCN.
> 
> Do we want to tell customers that U-Boot/Linux only supports power-of-two sizes of DDR?

We can make this work by updating how get_effective_memsize() works in lib_ppc/board.c.  We just need to make it aware of the amount of mapped memory.

The simplest thing might be to just add in a gd->mem_map_size to deal with the issue on both 86xx/44x/85xx

- k


More information about the U-Boot mailing list