commit 1542fbdeec0d1e2a6df13189df8dcb1ce8802be3
introduced one new bug to chip-select interleaving.

Single DDR controller also can do the chip-select
interleaving if there is dual-rank or qual-rank DIMMs.

Signed-off-by: Dave Liu <dave...@freescale.com>
---
The v1 also address the cs_per_ctrl == 1 case

 cpu/mpc8xxx/ddr/options.c |    6 ++----
 1 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/cpu/mpc8xxx/ddr/options.c b/cpu/mpc8xxx/ddr/options.c
index db44291..26ac480 100644
--- a/cpu/mpc8xxx/ddr/options.c
+++ b/cpu/mpc8xxx/ddr/options.c
@@ -22,9 +22,7 @@ unsigned int populate_memctl_options(int all_DIMMs_registered,
                        unsigned int ctrl_num)
 {
        unsigned int i;
-#if (CONFIG_NUM_DDR_CONTROLLERS > 1)
        const char *p;
-#endif
 
        /* Chip select options. */
 
@@ -242,8 +240,9 @@ unsigned int populate_memctl_options(int 
all_DIMMs_registered,
                                                simple_strtoul(p, NULL, 0);
                }
        }
+#endif
 
-       if( (p = getenv("ba_intlv_ctl")) != NULL) {
+       if( ((p = getenv("ba_intlv_ctl")) != NULL) && 
(CONFIG_CHIP_SELECTS_PER_CTRL > 1)) {
                if (strcmp(p, "cs0_cs1") == 0)
                        popts->ba_intlv_ctl = FSL_DDR_CS0_CS1;
                else if (strcmp(p, "cs2_cs3") == 0)
@@ -283,7 +282,6 @@ unsigned int populate_memctl_options(int 
all_DIMMs_registered,
                        break;
                }
        }
-#endif
 
        fsl_ddr_board_options(popts, pdimm, ctrl_num);
 
-- 
1.5.6

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to