Prechádzať zdrojové kódy

env_eeprom invalidates gd->env_addr by setting it to an offset value

Patch to fix boot hang when using env on i2c eeprom caused by invalid gd->env_addr

Signed-off-by: Guy Thouret <guy.thouret@wems.co.uk>
Cc: Heiko Schocher <hs@denx.de>
Guy Thouret 9 rokov pred
rodič
commit
c00c29d8f7
1 zmenil súbory, kde vykonal 0 pridanie a 7 odobranie
  1. 0 7
      common/env_eeprom.c

+ 0 - 7
common/env_eeprom.c

@@ -145,11 +145,6 @@ void env_relocate_spec(void)
 			gd->env_valid = 1;
 	}
 
-	if (gd->env_valid == 2)
-		gd->env_addr = off_env[1] + offsetof(env_t, data);
-	else if (gd->env_valid == 1)
-		gd->env_addr = off_env[0] + offsetof(env_t, data);
-
 #else /* CONFIG_ENV_OFFSET_REDUND */
 	ulong crc, len, new;
 	uchar rdbuf[64];
@@ -175,10 +170,8 @@ void env_relocate_spec(void)
 	}
 
 	if (crc == new) {
-		gd->env_addr	= offsetof(env_t, data);
 		gd->env_valid	= 1;
 	} else {
-		gd->env_addr	= 0;
 		gd->env_valid	= 0;
 	}
 #endif /* CONFIG_ENV_OFFSET_REDUND */