diff options
-rw-r--r-- | src/target/adi_v5_cmsis_dap.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/target/adi_v5_cmsis_dap.c b/src/target/adi_v5_cmsis_dap.c index 3ff5bfe0..7df4cc78 100644 --- a/src/target/adi_v5_cmsis_dap.c +++ b/src/target/adi_v5_cmsis_dap.c @@ -132,12 +132,12 @@ static int cmsis_dap_ap_q_bankselect(struct adiv5_dap *dap, unsigned reg) static int (cmsis_dap_queue_ap_read)(struct adiv5_dap *dap, unsigned reg, uint32_t *data) { - LOG_DEBUG("CMSIS-ADI: cmsis_dap_queue_ap_read %d", reg); - int retval = cmsis_dap_ap_q_bankselect(dap, reg); if (retval != ERROR_OK) return retval; + LOG_DEBUG("CMSIS-ADI: cmsis_dap_queue_ap_read %d", reg); + retval = jtag_interface->swd->read_reg( (CMSIS_CMD_AP | CMSIS_CMD_READ | CMSIS_CMD_A32(reg)), data); @@ -152,7 +152,7 @@ static int (cmsis_dap_queue_ap_read)(struct adiv5_dap *dap, unsigned reg, uint32 static int (cmsis_dap_queue_ap_write)(struct adiv5_dap *dap, unsigned reg, uint32_t data) { - LOG_DEBUG("CMSIS-ADI: cmsis_dap_queue_ap_write %d 0x%08" PRIx32, reg, data); + /* TODO: CSW_DBGSWENABLE (bit31) causes issues for some targets * disable until we find out why */ @@ -163,6 +163,8 @@ static int (cmsis_dap_queue_ap_write)(struct adiv5_dap *dap, unsigned reg, uint3 if (retval != ERROR_OK) return retval; + LOG_DEBUG("CMSIS-ADI: cmsis_dap_queue_ap_write %d 0x%08" PRIx32, reg, data); + retval = jtag_interface->swd->write_reg( (CMSIS_CMD_AP | CMSIS_CMD_WRITE | CMSIS_CMD_A32(reg)), data); |