diff options
author | Spencer Oliver <spen@spen-soft.co.uk> | 2012-01-13 11:23:27 +0000 |
---|---|---|
committer | Spencer Oliver <spen@spen-soft.co.uk> | 2012-01-23 11:39:07 +0000 |
commit | c527882121e3cc3d7cba5360c20928317c19a5cf (patch) | |
tree | 4369c088407d2d8d45cf30d145c92b95af0fb7ad /src | |
parent | 3a550e5b5fe011e526b150a5d234b48e8e2aaad6 (diff) |
stlink: enable cortex special reg writes
Change-Id: I5aa02e8de6dd5ac5a6ca628ba4068decb200c689
Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
Reviewed-on: http://openocd.zylin.com/378
Tested-by: jenkins
Diffstat (limited to 'src')
-rw-r--r-- | src/target/stm32_stlink.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/src/target/stm32_stlink.c b/src/target/stm32_stlink.c index dec2b24b..d00852c2 100644 --- a/src/target/stm32_stlink.c +++ b/src/target/stm32_stlink.c @@ -133,9 +133,7 @@ static int stm32_stlink_store_core_reg_u32(struct target *target, */ switch (num) { case 0 ... 18: - retval = - stlink_if->layout->api->write_reg(stlink_if->fd, num, - value); + retval = stlink_if->layout->api->write_reg(stlink_if->fd, num, value); if (retval != ERROR_OK) { struct reg *r; @@ -145,8 +143,7 @@ static int stm32_stlink_store_core_reg_u32(struct target *target, r->dirty = r->valid; return ERROR_JTAG_DEVICE_ERROR; } - LOG_DEBUG("write core reg %i value 0x%" PRIx32 "", (int)num, - value); + LOG_DEBUG("write core reg %i value 0x%" PRIx32 "", (int)num, value); break; case ARMV7M_PRIMASK: @@ -157,7 +154,8 @@ static int stm32_stlink_store_core_reg_u32(struct target *target, * in one Debug Core register. So say r0 and r2 docs; * it was removed from r1 docs, but still works. */ - /* cortexm3_dap_read_coreregister_u32(swjdp, ®, 20); */ + + stlink_if->layout->api->read_reg(stlink_if->fd, 20, ®); switch (num) { case ARMV7M_PRIMASK: @@ -177,10 +175,9 @@ static int stm32_stlink_store_core_reg_u32(struct target *target, break; } - /* cortexm3_dap_write_coreregister_u32(swjdp, reg, 20); */ + stlink_if->layout->api->write_reg(stlink_if->fd, 20, reg); - LOG_DEBUG("write special reg %i value 0x%" PRIx32 " ", (int)num, - value); + LOG_DEBUG("write special reg %i value 0x%" PRIx32 " ", (int)num, value); break; default: |