Improve arm926ejs command argument parsing.
authorZachary T Welch <zw@superlucidity.net>
Sat, 24 Oct 2009 13:36:05 +0000 (06:36 -0700)
committerZachary T Welch <zw@superlucidity.net>
Fri, 6 Nov 2009 02:03:19 +0000 (18:03 -0800)
src/target/arm926ejs.c

index ee24f5c307c1c48ac1d7147667b65e4469d70804..03adc774d7b7b7ace3e191e8518ee47ea71e14a8 100644 (file)
@@ -807,10 +807,10 @@ static int arm926ejs_handle_cp15_command(struct command_context_s *cmd_ctx,
                return ERROR_OK;
        }
 
-       opcode_1 = strtoul(args[0], NULL, 0);
-       opcode_2 = strtoul(args[1], NULL, 0);
-       CRn = strtoul(args[2], NULL, 0);
-       CRm = strtoul(args[3], NULL, 0);
+       COMMAND_PARSE_NUMBER(int, args[0], opcode_1);
+       COMMAND_PARSE_NUMBER(int, args[1], opcode_2);
+       COMMAND_PARSE_NUMBER(int, args[2], CRn);
+       COMMAND_PARSE_NUMBER(int, args[3], CRm);
 
        if (arm926ejs_get_arch_pointers(target, &armv4_5, &arm7_9, &arm9tdmi, &arm926ejs) != ERROR_OK)
        {
@@ -841,7 +841,8 @@ static int arm926ejs_handle_cp15_command(struct command_context_s *cmd_ctx,
        }
        else
        {
-               uint32_t value = strtoul(args[4], NULL, 0);
+               uint32_t value;
+               COMMAND_PARSE_NUMBER(u32, args[4], value);
                if ((retval = arm926ejs->write_cp15(target, opcode_1, opcode_2, CRn, CRm, value)) != ERROR_OK)
                {
                        command_print(cmd_ctx, "couldn't access register");