[U-Boot-Users] [PATCH] TQM5200: fix bug in SDRAM initialization code
Martin Krause
martin.krause at tqs.de
Mon Feb 25 13:16:27 CET 2008
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 flash 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 <martin.krause at tqs.de>
---
board/tqm5200/tqm5200.c | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/board/tqm5200/tqm5200.c b/board/tqm5200/tqm5200.c
index 905a043..8c3f701 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;
More information about the U-Boot
mailing list