[U-Boot] [PATCH 3/4] env_nand.c: do warn only if really no valid environment could be loaded

Scott Wood scottwood at freescale.com
Tue Nov 27 23:07:32 CET 2012


On 11/27/2012 04:06:03 PM, Scott Wood wrote:
> On 11/21/2012 06:59:20 AM, Phil Sutter wrote:
>> The warning is misleading, since there is no equivalent success note
>> when reading the other copy succeeds.
>> 
>> Signed-off-by: Phil Sutter <phil.sutter at viprinet.com>
>> ---
>>  common/env_nand.c |    9 +++++----
>>  1 files changed, 5 insertions(+), 4 deletions(-)
>> 
>> diff --git a/common/env_nand.c b/common/env_nand.c
>> index 895532b..58ba558 100644
>> --- a/common/env_nand.c
>> +++ b/common/env_nand.c
>> @@ -315,6 +315,7 @@ int get_nand_env_oob(nand_info_t *nand, unsigned  
>> long *result)
>>  void env_relocate_spec(void)
>>  {
>>  #if !defined(ENV_IS_EMBEDDED)
>> +	int read1_fail = 0, read2_fail = 0;
>>  	int crc1_ok = 0, crc2_ok = 0;
>>  	env_t *ep, *tmp_env1, *tmp_env2;
>> 
>> @@ -326,11 +327,11 @@ void env_relocate_spec(void)
>>  		goto done;
>>  	}
>> 
>> -	if (readenv(CONFIG_ENV_OFFSET, (u_char *) tmp_env1))
>> -		puts("No Valid Environment Area found\n");
>> +	read1_fail = readenv(CONFIG_ENV_OFFSET, (u_char *) tmp_env1);
>> +	read2_fail = readenv(CONFIG_ENV_OFFSET_REDUND, (u_char *)  
>> tmp_env2);
> 
> Why read the redundant environment if the the main one didn't fail?

Never mind, misread the original code (the answer is we want to see  
which one is more recent).

-Scott


More information about the U-Boot mailing list