NAND: formatting cleanups from env.oob support

Change if (ok) {
	bunch of stuff
} else {
	error
}

to

if (error) {
	get out
}

proceed with bunch of stuff

Plus a few whitespace cleanups.

Signed-off-by: Scott Wood <scottwood@freescale.com>
master
Scott Wood 14 years ago
parent c9f7351b5b
commit 53504a2789
  1. 54
      common/cmd_nand.c
  2. 26
      common/env_nand.c

@ -201,7 +201,7 @@ static void do_nand_status(nand_info_t *nand)
unsigned long nand_env_oob_offset;
int do_nand_env_oob(cmd_tbl_t *cmdtp, nand_info_t *nand,
int argc, char * const argv[])
int argc, char * const argv[])
{
int ret;
uint32_t oob_buf[ENV_OFFSET_SIZE/sizeof(uint32_t)];
@ -210,10 +210,10 @@ int do_nand_env_oob(cmd_tbl_t *cmdtp, nand_info_t *nand,
if (!strcmp(cmd, "get")) {
ret = get_nand_env_oob(nand, &nand_env_oob_offset);
if (!ret)
printf("0x%08lx\n", nand_env_oob_offset);
else
if (ret)
return 1;
printf("0x%08lx\n", nand_env_oob_offset);
} else if (!strcmp(cmd, "set")) {
ulong addr;
size_t dummy_size;
@ -222,17 +222,17 @@ int do_nand_env_oob(cmd_tbl_t *cmdtp, nand_info_t *nand,
if (argc < 3)
goto usage;
if (arg_off_size(argc-2, argv + 2, nand, &addr,
&dummy_size) < 0) {
if (arg_off_size(argc - 2, argv + 2, nand, &addr,
&dummy_size) < 0) {
printf("Offset or partition name expected\n");
return 1;
}
if (nand->oobavail < ENV_OFFSET_SIZE) {
printf("Insufficient available OOB bytes: %d OOB bytes"
" available but %d required for env.oob support\n",
nand->oobavail,
ENV_OFFSET_SIZE);
printf("Insufficient available OOB bytes:\n"
"%d OOB bytes available but %d required for "
"env.oob support\n",
nand->oobavail, ENV_OFFSET_SIZE);
return 1;
}
@ -251,23 +251,23 @@ int do_nand_env_oob(cmd_tbl_t *cmdtp, nand_info_t *nand,
oob_buf[1] = addr / nand->erasesize;
ret = nand->write_oob(nand, ENV_OFFSET_SIZE, &ops);
if (!ret) {
ret = get_nand_env_oob(nand, &nand_env_oob_offset);
if (ret) {
printf("Error reading env offset in OOB\n");
return ret;
}
if (addr != nand_env_oob_offset) {
printf("Verification of env offset in OOB "
"failed: 0x%08lx expected but got "
"0x%08lx\n", addr, nand_env_oob_offset);
return 1;
}
} else {
if (ret) {
printf("Error writing OOB block 0\n");
return ret;
}
ret = get_nand_env_oob(nand, &nand_env_oob_offset);
if (ret) {
printf("Error reading env offset in OOB\n");
return ret;
}
if (addr != nand_env_oob_offset) {
printf("Verification of env offset in OOB failed: "
"0x%08lx expected but got 0x%08lx\n",
addr, nand_env_oob_offset);
return 1;
}
} else {
goto usage;
}
@ -369,8 +369,10 @@ int do_nand(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[])
#ifdef CONFIG_ENV_OFFSET_OOB
/* this command operates only on the first nand device */
if (strcmp(cmd, "env.oob") == 0)
return do_nand_env_oob(cmdtp, &nand_info[0], argc - 1, argv + 1);
if (strcmp(cmd, "env.oob") == 0) {
return do_nand_env_oob(cmdtp, &nand_info[0],
argc - 1, argv + 1);
}
#endif
/* the following commands operate on the current device */

@ -299,23 +299,21 @@ int get_nand_env_oob(nand_info_t *nand, unsigned long *result)
ops.oobbuf = (void *) oob_buf;
ret = nand->read_oob(nand, ENV_OFFSET_SIZE, &ops);
if (ret) {
printf("error reading OOB block 0\n");
return ret;
}
if (!ret) {
if (oob_buf[0] == ENV_OOB_MARKER) {
*result = oob_buf[1] * nand->erasesize;
} else if (oob_buf[0] == ENV_OOB_MARKER_OLD) {
*result = oob_buf[1];
} else {
printf("No dynamic environment marker in OOB block 0"
"\n");
ret = -ENOENT;
goto fail;
}
if (oob_buf[0] == ENV_OOB_MARKER) {
*result = oob_buf[1] * nand->erasesize;
} else if (oob_buf[0] == ENV_OOB_MARKER_OLD) {
*result = oob_buf[1];
} else {
printf("error reading OOB block 0\n");
printf("No dynamic environment marker in OOB block 0\n");
return -ENOENT;
}
fail:
return ret;
return 0;
}
#endif

Loading…
Cancel
Save