Fix bug in the SDRAM initialization code for canmb, IceCube and
[pandora-u-boot.git] / board / icecube / icecube.c
index 07c25ed..3763821 100644 (file)
@@ -133,10 +133,13 @@ long int initdram (int board_type)
        *(vu_long *)MPC5XXX_SDRAM_CS1CFG = dramsize + 0x0000001e;/* 2G */
 
        /* find RAM size using SDRAM CS1 only */
-       sdram_start(0);
-       test1 = get_ram_size((ulong *)(CFG_SDRAM_BASE + dramsize), 0x80000000);
-       sdram_start(1);
-       test2 = get_ram_size((ulong *)(CFG_SDRAM_BASE + dramsize), 0x80000000);
+       if (!dramsize) 
+               sdram_start(0);
+       test2 = test1 = get_ram_size((ulong *)(CFG_SDRAM_BASE + dramsize), 0x80000000);
+       if (!dramsize) {
+               sdram_start(1);
+               test2 = get_ram_size((ulong *)(CFG_SDRAM_BASE + dramsize), 0x80000000);
+       }
        if (test1 > test2) {
                sdram_start(0);
                dramsize2 = test1;