[U-Boot] [PATCH v2] mpc86xx: set the DDR BATs after calculating true DDR size
Timur Tabi
timur at freescale.com
Tue Mar 30 16:37:28 CEST 2010
Kumar Gala wrote:
> +void setup_ddr_bat(phys_addr_t dram_size)
> +{
> + unsigned long batu, bl;
> +
> + bl = TO_BATU_BL(min(dram_size, CONFIG_MAX_MEM_MAPPED));
> +
> + if (BATU_SIZE(bl) != dram_size) {
> + u64 sz = (u64)dram_size - BATU_SIZE(bl);
> + print_size(sz, " left unmapped\n");
> + }
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.
--
Timur Tabi
Linux kernel developer at Freescale
More information about the U-Boot
mailing list