int adi_jtag_dp_scan(swjdp_common_t *swjdp, uint8_t instr, uint8_t reg_addr, uint8_t RnW, uint8_t *outvalue, uint8_t *invalue, uint8_t *ack)
{
arm_jtag_t *jtag_info = swjdp->jtag_info;
- scan_field_t fields[2];
+ struct scan_field fields[2];
uint8_t out_addr_buf;
jtag_set_end_state(TAP_IDLE);
int adi_jtag_dp_scan_u32(swjdp_common_t *swjdp, uint8_t instr, uint8_t reg_addr, uint8_t RnW, uint32_t outvalue, uint32_t *invalue, uint8_t *ack)
{
arm_jtag_t *jtag_info = swjdp->jtag_info;
- scan_field_t fields[2];
+ struct scan_field fields[2];
uint8_t out_value_buf[4];
uint8_t out_addr_buf;
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);
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);
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);
return retval;
}
-
-