aboutsummaryrefslogtreecommitdiff
path: root/src/target
diff options
context:
space:
mode:
authorAntonio Borneo <borneo.antonio@gmail.com>2021-09-17 18:47:20 +0200
committerAntonio Borneo <borneo.antonio@gmail.com>2021-09-25 13:13:10 +0000
commit7b504370f732a00d803163cab2b1750bde1927cf (patch)
tree60677068a39907d667d11e680c9a9514702f515e /src/target
parent2a43137619e384bee38ea58d817a0d15876d2473 (diff)
downloadriscv-openocd-7b504370f732a00d803163cab2b1750bde1927cf.zip
riscv-openocd-7b504370f732a00d803163cab2b1750bde1927cf.tar.gz
riscv-openocd-7b504370f732a00d803163cab2b1750bde1927cf.tar.bz2
arm_tpiu_swo: fix support for deprecated 'tpiu' command before 'init'
Commit dc7b32ea4a00 ("armv7m_trace: get rid of the old tpiu code") is not handling correctly the old 'tpiu' command if it is run during the config phase (before command 'init'). Move the call to the old event handler 'trace-config' in function jim_arm_tpiu_swo_enable(), so it is correctly executed after 'init'. Add the call to the old event handler 'trace-config' also during jim_arm_tpiu_swo_disable(), to match the old behaviour. Add more information while alerting that the event 'trace-config' is deprecated. Change-Id: If831d9159b4634c74e19c04099d041a6e2be3f2a Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Fixes: dc7b32ea4a00 ("armv7m_trace: get rid of the old tpiu code") Reviewed-on: https://review.openocd.org/c/openocd/+/6561 Tested-by: jenkins Reviewed-by: Karl Palsson <karlp@tweak.net.au>
Diffstat (limited to 'src/target')
-rw-r--r--src/target/arm_tpiu_swo.c12
-rw-r--r--src/target/target.c2
2 files changed, 12 insertions, 2 deletions
diff --git a/src/target/arm_tpiu_swo.c b/src/target/arm_tpiu_swo.c
index 746ab39..8b1d012 100644
--- a/src/target/arm_tpiu_swo.c
+++ b/src/target/arm_tpiu_swo.c
@@ -764,6 +764,10 @@ static int jim_arm_tpiu_swo_enable(Jim_Interp *interp, int argc, Jim_Obj *const
arm_tpiu_swo_handle_event(obj, TPIU_SWO_EVENT_POST_ENABLE);
+ /* START_DEPRECATED_TPIU */
+ target_handle_event(target, TARGET_EVENT_TRACE_CONFIG);
+ /* END_DEPRECATED_TPIU */
+
obj->enabled = true;
return JIM_OK;
@@ -817,6 +821,13 @@ static int jim_arm_tpiu_swo_disable(Jim_Interp *interp, int argc, Jim_Obj *const
}
arm_tpiu_swo_handle_event(obj, TPIU_SWO_EVENT_POST_DISABLE);
+
+ /* START_DEPRECATED_TPIU */
+ struct command_context *cmd_ctx = current_command_context(interp);
+ struct target *target = get_current_target(cmd_ctx);
+ target_handle_event(target, TARGET_EVENT_TRACE_CONFIG);
+ /* END_DEPRECATED_TPIU */
+
return JIM_OK;
}
@@ -1112,7 +1123,6 @@ COMMAND_HANDLER(handle_tpiu_deprecated_config_command)
if (retval != ERROR_OK)
return retval;
- target_handle_event(target, TARGET_EVENT_TRACE_CONFIG);
return ERROR_OK;
}
diff --git a/src/target/target.c b/src/target/target.c
index 6571e9c..6d3bf77 100644
--- a/src/target/target.c
+++ b/src/target/target.c
@@ -4983,7 +4983,7 @@ no_params:
if (goi->isconfigure) {
/* START_DEPRECATED_TPIU */
if (n->value == TARGET_EVENT_TRACE_CONFIG)
- LOG_INFO("DEPRECATED target event %s", n->name);
+ LOG_INFO("DEPRECATED target event %s; use TPIU events {pre,post}-{enable,disable}", n->name);
/* END_DEPRECATED_TPIU */
bool replace = true;