9
0
Fork 0

ppc: mpc85xx: fix memory size calculation

Fix the chip select configuration register offset increment and summing
of bank size so that, for chip select index greater than 0, barebox can
determine the total memory size from enabled banks.

Signed-off-by: Renaud Barbier <renaud.barbier@ge.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Renaud Barbier 2014-02-13 16:02:54 +00:00 committed by Sascha Hauer
parent 9bdef9e7f2
commit 3df00bd62d
1 changed files with 2 additions and 2 deletions

View File

@ -68,14 +68,14 @@ phys_size_t fsl_get_effective_memsize(void)
sdram_size = 0;
for (ix = 0; ix < CFG_CHIP_SELECTS_PER_CTRL; ix++) {
if (in_be32(regs + DDR_OFF(CS0_CONFIG) + (ix * 8)) &
if (in_be32(regs + DDR_OFF(CS0_CONFIG) + (ix * 4)) &
SDRAM_CFG_MEM_EN) {
reg = in_be32(regs + DDR_OFF(CS0_BNDS) + (ix * 8));
/* start address */
san = (reg & 0x0fff00000) >> 16;
/* end address */
ean = (reg & 0x00000fff);
sdram_size = ((ean - san + 1) << 24);
sdram_size += ((ean - san + 1) << 24);
}
}