[U-Boot] 4 PiB left unmapped

DUNDA Matthias Matthias.DUNDA at thalesgroup.com
Fri Nov 19 11:23:56 CET 2010


>>
>>> Well, it's actually 2 Gig, just like u-boot recognizes above...
>>
>> There's something wrong with the parameter you're passing to print_size().

>I'm guessing its -1 or something like that.

I used the board specific code of the MPC8568MDS and adapted it to our configuration.

The code region of interest here is in mpc8568mds.c:

phys_size_t
initdram(int board_type)
{
	long dram_size = 0;
...
	dram_size = fsl_ddr_sdram();
	dram_size = setup_ddr_tlbs(dram_size / 0x100000);
...
}

The dram_size parameter is signed and thus gives a value of -1 when having 2 Gig installed (0x80000000).

-1 devided by 0x100000 gives 0xfffff800, which is the 4 PiB when interpreted as unsigned again in setup_ddr_tlbs(...).

The MPC8568MDS has only 256 MB in default configuration, so it shouldn't occur there.

Anyhow, I don't understand, why it worked in u-boot 2009.11.1... :-/

so long...
Matthias



More information about the U-Boot mailing list