summaryrefslogtreecommitdiff
path: root/src/flash
diff options
context:
space:
mode:
authorZachary T Welch <zw@superlucidity.net>2009-10-23 02:17:17 -0700
committerZachary T Welch <zw@superlucidity.net>2009-11-05 18:19:18 -0800
commit7f6ad49d12e3d166c730d27306d887bb3ed48a1b (patch)
tree00094fa663619f17eac41304324b3b959c71389f /src/flash
parent680e22c4d7d71d88128bd12e3ecc08b135da626a (diff)
downloadopenocd+libswd-7f6ad49d12e3d166c730d27306d887bb3ed48a1b.tar.gz
openocd+libswd-7f6ad49d12e3d166c730d27306d887bb3ed48a1b.tar.bz2
openocd+libswd-7f6ad49d12e3d166c730d27306d887bb3ed48a1b.tar.xz
openocd+libswd-7f6ad49d12e3d166c730d27306d887bb3ed48a1b.zip
Improve lpc2000.c command argument parsing.
Diffstat (limited to 'src/flash')
-rw-r--r--src/flash/lpc2000.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/flash/lpc2000.c b/src/flash/lpc2000.c
index 5dcf1bba..ed9c7c34 100644
--- a/src/flash/lpc2000.c
+++ b/src/flash/lpc2000.c
@@ -501,7 +501,7 @@ static int lpc2000_flash_bank_command(struct command_context_s *cmd_ctx, char *c
}
lpc2000_info->iap_working_area = NULL;
- lpc2000_info->cclk = strtoul(args[7], NULL, 0);
+ COMMAND_PARSE_NUMBER(u32, args[7], lpc2000_info->cclk);
lpc2000_info->calc_checksum = 0;
lpc2000_build_sector_list(bank);
@@ -776,7 +776,6 @@ static int lpc2000_info(struct flash_bank_s *bank, char *buf, int buf_size)
static int lpc2000_handle_part_id_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
{
- flash_bank_t *bank;
uint32_t param_table[5];
uint32_t result_table[4];
int status_code;
@@ -786,12 +785,10 @@ static int lpc2000_handle_part_id_command(struct command_context_s *cmd_ctx, cha
return ERROR_COMMAND_SYNTAX_ERROR;
}
- 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 (bank->target->state != TARGET_HALTED)
{