X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Ftarget%2Farm_adi_v5.c;h=4a7a37c02022846488460feb4dd0f2ef1d7cce3c;hb=a585bdf7269ce5c861c83ee3294ba1f074e9c877;hp=33641320639e6d51072ca426b1c04b7127598185;hpb=ddade10d4a9309ea252b0a03cde9f757b5c71778;p=openocd.git diff --git a/src/target/arm_adi_v5.c b/src/target/arm_adi_v5.c index 3364132063..4a7a37c020 100644 --- a/src/target/arm_adi_v5.c +++ b/src/target/arm_adi_v5.c @@ -1364,16 +1364,23 @@ int dap_info_command(struct command_context_s *cmd_ctx, swjdp_common_t *swjdp, i return ERROR_OK; } -int dap_baseaddr_command(struct command_context_s *cmd_ctx, - swjdp_common_t *swjdp, char **args, int argc) +DAP_COMMAND_HANDLER(dap_baseaddr_command) { uint32_t apsel, apselsave, baseaddr; int retval; - apsel = swjdp->apsel; apselsave = swjdp->apsel; - if (argc > 0) - apsel = strtoul(args[0], NULL, 0); + switch (argc) { + case 0: + apsel = swjdp->apsel; + break; + case 1: + COMMAND_PARSE_NUMBER(u32, args[0], apsel); + break; + default: + return ERROR_COMMAND_SYNTAX_ERROR; + } + if (apselsave != apsel) dap_ap_select(swjdp, apsel); @@ -1387,31 +1394,43 @@ int dap_baseaddr_command(struct command_context_s *cmd_ctx, return retval; } -int dap_memaccess_command(struct command_context_s *cmd_ctx, - swjdp_common_t *swjdp, char **args, int argc) +DAP_COMMAND_HANDLER(dap_memaccess_command) { uint32_t memaccess_tck; - memaccess_tck = swjdp->memaccess_tck; - if (argc > 0) - memaccess_tck = strtoul(args[0], NULL, 0); - + switch (argc) { + case 0: + memaccess_tck = swjdp->memaccess_tck; + break; + case 1: + COMMAND_PARSE_NUMBER(u32, args[0], memaccess_tck); + break; + default: + return ERROR_COMMAND_SYNTAX_ERROR; + } swjdp->memaccess_tck = memaccess_tck; + command_print(cmd_ctx, "memory bus access delay set to %" PRIi32 " tck", swjdp->memaccess_tck); return ERROR_OK; } -int dap_apsel_command(struct command_context_s *cmd_ctx, - swjdp_common_t *swjdp, char **args, int argc) +DAP_COMMAND_HANDLER(dap_apsel_command) { uint32_t apsel, apid; int retval; - apsel = 0; - if (argc > 0) - apsel = strtoul(args[0], NULL, 0); + switch (argc) { + case 0: + apsel = 0; + break; + case 1: + COMMAND_PARSE_NUMBER(u32, args[0], apsel); + break; + default: + return ERROR_COMMAND_SYNTAX_ERROR; + } dap_ap_select(swjdp, apsel); dap_ap_read_reg_u32(swjdp, 0xFC, &apid); @@ -1422,16 +1441,22 @@ int dap_apsel_command(struct command_context_s *cmd_ctx, return retval; } -int dap_apid_command(struct command_context_s *cmd_ctx, - swjdp_common_t *swjdp, char **args, int argc) +DAP_COMMAND_HANDLER(dap_apid_command) { uint32_t apsel, apselsave, apid; int retval; - apsel = swjdp->apsel; apselsave = swjdp->apsel; - if (argc > 0) - apsel = strtoul(args[0], NULL, 0); + switch (argc) { + case 0: + apsel = swjdp->apsel; + break; + case 1: + COMMAND_PARSE_NUMBER(u32, args[0], apsel); + break; + default: + return ERROR_COMMAND_SYNTAX_ERROR; + } if (apselsave != apsel) dap_ap_select(swjdp, apsel); @@ -1444,5 +1469,3 @@ int dap_apid_command(struct command_context_s *cmd_ctx, return retval; } - -