summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZachary T Welch <zw@superlucidity.net>2009-10-22 22:33:12 -0700
committerZachary T Welch <zw@superlucidity.net>2009-11-05 18:19:18 -0800
commit7b49739790cf8c7638ff11573c0e40626b936d3d (patch)
tree8a5ba1be916b24c3012863f533a57098bfd8e58e
parent75b601b1f31de52885448bc59ce5c5f5a5048d93 (diff)
downloadopenocd+libswd-7b49739790cf8c7638ff11573c0e40626b936d3d.tar.gz
openocd+libswd-7b49739790cf8c7638ff11573c0e40626b936d3d.tar.bz2
openocd+libswd-7b49739790cf8c7638ff11573c0e40626b936d3d.tar.xz
openocd+libswd-7b49739790cf8c7638ff11573c0e40626b936d3d.zip
Improve davinci_nand.c command argument parsing.
-rw-r--r--src/flash/davinci_nand.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/flash/davinci_nand.c b/src/flash/davinci_nand.c
index 41c2b20a..b6210b8f 100644
--- a/src/flash/davinci_nand.c
+++ b/src/flash/davinci_nand.c
@@ -638,7 +638,6 @@ static int davinci_nand_device_command(struct command_context_s *cmd_ctx,
unsigned long chip, aemif;
enum ecc eccmode;
int chipsel;
- char *ep;
/* arguments:
* - "davinci"
@@ -661,8 +660,8 @@ static int davinci_nand_device_command(struct command_context_s *cmd_ctx,
goto fail;
}
- chip = strtoul(argv[2], &ep, 0);
- if (*ep || chip == 0 || chip == ULONG_MAX) {
+ COMMAND_PARSE_NUMBER(ulong, argv[2], chip);
+ if (chip == 0) {
LOG_ERROR("Invalid NAND chip address %s", argv[2]);
goto fail;
}
@@ -678,8 +677,8 @@ static int davinci_nand_device_command(struct command_context_s *cmd_ctx,
goto fail;
}
- aemif = strtoul(argv[4], &ep, 0);
- if (*ep || aemif == 0 || aemif == ULONG_MAX) {
+ COMMAND_PARSE_NUMBER(ulong, argv[4], aemif);
+ if (aemif == 0) {
LOG_ERROR("Invalid AEMIF controller address %s", argv[4]);
goto fail;
}