cmd_nand: Update (nand_info_t*)nand after arg_off(_size) call
The arg_off() and arg_off_size() update the 'current NAND device' variable (dev). This is then used when assigning the (nand_info_t*)nand value. Place the assignment after the arg_off(_size) calls to prevent using incorrect (nand_info_t*) nand value. Signed-off-by: Rostislav Lisovy <lisovy@merica.cz>
This commit is contained in:
parent
97d5e9d149
commit
93d3232d96
|
@ -647,8 +647,6 @@ static int do_nand(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
||||||
read = strncmp(cmd, "read", 4) == 0; /* 1 = read, 0 = write */
|
read = strncmp(cmd, "read", 4) == 0; /* 1 = read, 0 = write */
|
||||||
printf("\nNAND %s: ", read ? "read" : "write");
|
printf("\nNAND %s: ", read ? "read" : "write");
|
||||||
|
|
||||||
nand = &nand_info[dev];
|
|
||||||
|
|
||||||
s = strchr(cmd, '.');
|
s = strchr(cmd, '.');
|
||||||
|
|
||||||
if (s && !strcmp(s, ".raw")) {
|
if (s && !strcmp(s, ".raw")) {
|
||||||
|
@ -657,6 +655,8 @@ static int do_nand(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
||||||
if (arg_off(argv[3], &dev, &off, &size, &maxsize))
|
if (arg_off(argv[3], &dev, &off, &size, &maxsize))
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
|
nand = &nand_info[dev];
|
||||||
|
|
||||||
if (argc > 4 && !str2long(argv[4], &pagecount)) {
|
if (argc > 4 && !str2long(argv[4], &pagecount)) {
|
||||||
printf("'%s' is not a number\n", argv[4]);
|
printf("'%s' is not a number\n", argv[4]);
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -679,6 +679,8 @@ static int do_nand(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
||||||
rwsize = size;
|
rwsize = size;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nand = &nand_info[dev];
|
||||||
|
|
||||||
if (!s || !strcmp(s, ".jffs2") ||
|
if (!s || !strcmp(s, ".jffs2") ||
|
||||||
!strcmp(s, ".e") || !strcmp(s, ".i")) {
|
!strcmp(s, ".e") || !strcmp(s, ".i")) {
|
||||||
if (read)
|
if (read)
|
||||||
|
|
Loading…
Reference in New Issue