From f3a329acb26017d8e10e9c93e1e726c2a5ac634a Mon Sep 17 00:00:00 2001 From: Martin Krause Date: Mon, 25 Feb 2008 13:27:52 +0100 Subject: TQM5200: fix bug in SDRAM initialization code This patch fixes a bug in the SDRAM initialization code for the TQM5200. The hi_addr bit is now set correctly. Without this patch the hi_addr bit is always set to 1, if the second SDRAM bank is not populated. For other MPC5200 boards a correspondig patch has already been applied some time ago, see commit a63109281ad41b0fb489fdcb901171f76bcdbc2c. Signed-off-by: Martin Krause -- Forget the first patch please. I confused flash with SDRAM in the comment ... --- board/tqm5200/tqm5200.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'board') diff --git a/board/tqm5200/tqm5200.c b/board/tqm5200/tqm5200.c index 905a04338e7..8c3f701d5ea 100644 --- a/board/tqm5200/tqm5200.c +++ b/board/tqm5200/tqm5200.c @@ -155,10 +155,13 @@ long int initdram (int board_type) *(vu_long *)MPC5XXX_SDRAM_CS1CFG = dramsize + 0x0000001c; /* 512MB */ /* find RAM size using SDRAM CS1 only */ - sdram_start(0); - test1 = get_ram_size((long *)(CFG_SDRAM_BASE + dramsize), 0x20000000); - sdram_start(1); - test2 = get_ram_size((long *)(CFG_SDRAM_BASE + dramsize), 0x20000000); + if (!dramsize) + sdram_start(0); + test2 = test1 = get_ram_size((long *)(CFG_SDRAM_BASE + dramsize), 0x20000000); + if (!dramsize) { + sdram_start(1); + test2 = get_ram_size((long *)(CFG_SDRAM_BASE + dramsize), 0x20000000); + } if (test1 > test2) { sdram_start(0); dramsize2 = test1; -- cgit v1.2.3