nand: Fix nand info for no device
authorTony Lindgren <tony@atomide.com>
Mon, 29 Aug 2016 16:11:43 +0000 (09:11 -0700)
committerScott Wood <oss@buserror.net>
Thu, 1 Sep 2016 22:30:25 +0000 (17:30 -0500)
Looks like we have few more places where we're testing for
nand_info[i]->name. We can now use just test for nand_info[i]
instead.

This fixes a data abort on devices with no NAND when doing
nand info.

Signed-off-by: Tony Lindgren <tony@atomide.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
cmd/nand.c

index 97f1619ffd6e42639388f9b955359da327a0393e..c25e25af3d0ca71e3a2f2ef6e1a1cbf84b8d57c0 100644 (file)
@@ -398,7 +398,7 @@ static int do_nand(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 
                putc('\n');
                for (i = 0; i < CONFIG_SYS_MAX_NAND_DEVICE; i++) {
-                       if (nand_info[i]->name)
+                       if (nand_info[i])
                                nand_print_and_set_info(i);
                }
                return 0;
@@ -433,7 +433,7 @@ static int do_nand(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
         * for another device is to be used.
         */
        if (dev < 0 || dev >= CONFIG_SYS_MAX_NAND_DEVICE ||
-           !nand_info[dev]->name) {
+           !nand_info[dev]) {
                puts("\nno devices available\n");
                return 1;
        }
@@ -991,7 +991,7 @@ usage:
 
        idx = simple_strtoul(boot_device, NULL, 16);
 
-       if (idx < 0 || idx >= CONFIG_SYS_MAX_NAND_DEVICE || !nand_info[idx]->name) {
+       if (idx < 0 || idx >= CONFIG_SYS_MAX_NAND_DEVICE || !nand_info[idx]) {
                printf("\n** Device %d not available\n", idx);
                bootstage_error(BOOTSTAGE_ID_NAND_AVAILABLE);
                return 1;