Skip to content

Commit

Permalink
arm_tpiu_swo: fix support for deprecated 'tpiu' command before 'init'
Browse files Browse the repository at this point in the history
Commit dc7b32e ("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: dc7b32e ("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>
  • Loading branch information
borneoa committed Sep 25, 2021
1 parent 2a43137 commit 7b50437
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 2 deletions.
12 changes: 11 additions & 1 deletion src/target/arm_tpiu_swo.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;

Expand Down Expand Up @@ -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;
}

Expand Down Expand Up @@ -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;
}

Expand Down
2 changes: 1 addition & 1 deletion src/target/target.c
Original file line number Diff line number Diff line change
Expand Up @@ -4983,7 +4983,7 @@ static int target_configure(struct jim_getopt_info *goi, struct target *target)
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;
Expand Down

0 comments on commit 7b50437

Please sign in to comment.