[U-Boot] [PATCH 5/5] New implementation for internal handling of environment variables.

Kim Phillips kim.phillips at freescale.com
Wed Jul 21 00:00:26 CEST 2010


On Tue, 20 Jul 2010 23:43:14 +0200
Wolfgang Denk <wd at denx.de> wrote:

> Dear Kim,
> 
> In message <20100720160808.b7ecf34c.kim.phillips at freescale.com> you wrote:
> > 
> > > However, I cannot see any gentenv() use before relocation for your
> > > board, so the problem there is still unclear. I think I need your
> > > help to debug this...
> > 
> > looks like arch/powerpc/cpu/mpc8xxx/ddr/options.c gets memory
> > interleaving configuration from the environment, using getenv().
> 
> Ah! Can you please try the following patch - it's not intended to be a
> fix, just to verify my hypothesis. Thanks in advance.

indeed, your patch plus the following makes the 8572 boot properly
again.

diff --git a/arch/powerpc/cpu/mpc8xxx/ddr/options.c b/arch/powerpc/cpu/mpc8xxx/ddr/options.c
index 0b9cb1d..692669f 100644
--- a/arch/powerpc/cpu/mpc8xxx/ddr/options.c
+++ b/arch/powerpc/cpu/mpc8xxx/ddr/options.c
@@ -252,8 +252,7 @@ unsigned int populate_memctl_options(int all_DIMMs_registered,
 #endif
 
 	i = getenv_r("ba_intlv_ctl", tmp, sizeof (tmp));
-	if (i > 0) && (CONFIG_CHIP_SELECTS_PER_CTRL > 1)) {
-		(CONFIG_CHIP_SELECTS_PER_CTRL > 1)) {
+	if ((i > 0) && (CONFIG_CHIP_SELECTS_PER_CTRL > 1)) {
 		if (strcmp(tmp, "cs0_cs1") == 0)
 			popts->ba_intlv_ctl = FSL_DDR_CS0_CS1;
 		else if (strcmp(tmp, "cs2_cs3") == 0)

Kim



More information about the U-Boot mailing list