aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntonio Borneo <borneo.antonio@gmail.com>2024-04-06 00:26:38 +0200
committerAntonio Borneo <borneo.antonio@gmail.com>2024-05-04 08:24:27 +0000
commitac6b00c3cae5def9c1b3f08fae68703abc494109 (patch)
tree3da52c6917c375de1a5f4c5369d4312833a751d2
parenta9e8ca55a6f44cf6edef7ea5ca66927fa02f3cca (diff)
downloadriscv-openocd-ac6b00c3cae5def9c1b3f08fae68703abc494109.zip
riscv-openocd-ac6b00c3cae5def9c1b3f08fae68703abc494109.tar.gz
riscv-openocd-ac6b00c3cae5def9c1b3f08fae68703abc494109.tar.bz2
target: cortex_m: fix display of DWT registers
Commit 16b4b8cf5453 ("Cortex-M3: expose most DWT registers") added the DWT registers to the list of CPU registers. The commit message from 2009 reports the reason behind this odd mixing of CPU and DWT registers. This feature got broken in 2017 with the introduction of the field struct reg::exist and its further use in the code. As result, the command 'reg' on a target Cortex-M reports only the core registers and then the header line ===== Cortex-M DWT registers not anymore followed by the DWT registers. Fix it by tagging each DWT registers as existing. Change-Id: Iab026e7da8d6b8ba052514c3fd3b5cdfe301f330 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Fixes: b5964191f0d2 ("register: support non-existent registers") Reviewed-on: https://review.openocd.org/c/openocd/+/8198 Reviewed-by: Tomas Vanek <vanekt@fbl.cz> Tested-by: jenkins
-rw-r--r--src/target/cortex_m.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/target/cortex_m.c b/src/target/cortex_m.c
index 4894cab..a26df2e 100644
--- a/src/target/cortex_m.c
+++ b/src/target/cortex_m.c
@@ -2351,6 +2351,7 @@ static void cortex_m_dwt_addreg(struct target *t, struct reg *r, const struct dw
r->value = state->value;
r->arch_info = state;
r->type = &dwt_reg_type;
+ r->exist = true;
}
static void cortex_m_dwt_setup(struct cortex_m_common *cm, struct target *target)