
On Sun, Oct 14, 2012 at 03:08:20AM +0200, Marek Vasut wrote:
Dear Pali Roh?r,
On Sunday 14 October 2012 02:27:05 Marek Vasut wrote:
Dear Pali Roh?r,
On Sunday 14 October 2012 02:17:01 Marek Vasut wrote:
Dear Pali Roh?r,
On Sunday 14 October 2012 01:45:06 Marek Vasut wrote: > > for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) { > > > > + if (bd->bi_dram[i].size == 0) > > + continue; > > This doesn't look right at all, your board is > misconfigured > if > bd->bi_dram[i] == 0. Did you misconfigure > CONFIG_NR_DRAM_BANKS > ?
On some N900 devices there are two banks and on some only one. If there is only one it has size 256 MB and if there are two both has 128 MB. CONFIG_NR_DRAM_BANKS must be specified at compile time, but for N900 I need runtime detection.
How can that be? Are these two banks contiguous?
Yes.
And how does the memory map differ in case of device with one 256MB block then ?
Memory map is same, from 0x80000000 to 0x90000000.
For two bank devices uboot reports: size=08000000 start=80000000 size=08000000 start=88000000
And for one: size=10000000 start=80000000 size=00000000 start=90000000
Tom, can this not be handled as a single area? How does the omap memory layout look?
On other platforms we simply lie about the number of banks as at least today nothing is re-using the number of banks and re-reconfiguring DDR. Making n900 also just claim one bank and then reporting the correct total memory size as the size of that one bank will put it into good company at least.