Improve stellaris.c erase argument parsing.
authorZachary T Welch <zw@superlucidity.net>
Fri, 23 Oct 2009 08:40:47 +0000 (01:40 -0700)
committerZachary T Welch <zw@superlucidity.net>
Fri, 6 Nov 2009 02:19:19 +0000 (18:19 -0800)
src/flash/stellaris.c

index dfc276e2d5afdd78e08ae5d284cfa69929d25bde..b482ce2e10c4b41b044c8c73b8cdfd3cdd39e78f 100644 (file)
@@ -1162,7 +1162,6 @@ static int stellaris_mass_erase(struct flash_bank_s *bank)
 
 static int stellaris_handle_mass_erase_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
 {
-       flash_bank_t *bank;
        int i;
 
        if (argc < 1)
@@ -1171,12 +1170,10 @@ static int stellaris_handle_mass_erase_command(struct command_context_s *cmd_ctx
                return ERROR_OK;
        }
 
-       bank = get_flash_bank_by_num(strtoul(args[0], NULL, 0));
-       if (!bank)
-       {
-               command_print(cmd_ctx, "flash bank '#%s' is out of bounds", args[0]);
-               return ERROR_OK;
-       }
+       flash_bank_t *bank;
+       int retval = flash_command_get_bank_by_num(cmd_ctx, args[0], &bank);
+       if (ERROR_OK != retval)
+               return retval;
 
        if (stellaris_mass_erase(bank) == ERROR_OK)
        {