#include "trace.h"
#include "target.h"
-int trace_point(target_t *target, uint32_t number)
+int trace_point(struct target *target, uint32_t number)
{
- trace_t *trace = target->trace_info;
+ struct trace *trace = target->trace_info;
LOG_DEBUG("tracepoint: %i", (int)number);
return ERROR_OK;
}
-static int handle_trace_point_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
+COMMAND_HANDLER(handle_trace_point_command)
{
- target_t *target = get_current_target(cmd_ctx);
- trace_t *trace = target->trace_info;
+ struct target *target = get_current_target(cmd_ctx);
+ struct trace *trace = target->trace_info;
if (argc == 0)
{
/* resize array if necessary */
if (!trace->trace_points || (trace->trace_points_size == trace->num_trace_points))
{
- trace->trace_points = realloc(trace->trace_points, sizeof(trace_point_t) * (trace->trace_points_size + 32));
+ trace->trace_points = realloc(trace->trace_points, sizeof(struct trace_point) * (trace->trace_points_size + 32));
trace->trace_points_size += 32;
}
- trace->trace_points[trace->num_trace_points].address = strtoul(args[0], NULL, 0);
+ uint32_t address;
+ COMMAND_PARSE_NUMBER(u32, args[0], address);
+ trace->trace_points[trace->num_trace_points].address = address;
trace->trace_points[trace->num_trace_points].hit_counter = 0;
trace->num_trace_points++;
return ERROR_OK;
}
-static int handle_trace_history_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
+COMMAND_HANDLER(handle_trace_history_command)
{
- target_t *target = get_current_target(cmd_ctx);
- trace_t *trace = target->trace_info;
+ struct target *target = get_current_target(cmd_ctx);
+ struct trace *trace = target->trace_info;
if (argc > 0)
{
if (trace->trace_history)
free(trace->trace_history);
- trace->trace_history_size = strtoul(args[0], NULL, 0);
+ COMMAND_PARSE_NUMBER(u32, args[0], trace->trace_history_size);
trace->trace_history = malloc(sizeof(uint32_t) * trace->trace_history_size);
command_print(cmd_ctx, "new trace history size: %i", (int)(trace->trace_history_size));
return ERROR_OK;
}
-int trace_register_commands(struct command_context_s *cmd_ctx)
+int trace_register_commands(struct command_context *cmd_ctx)
{
- command_t *trace_cmd =
+ struct command *trace_cmd =
register_command(cmd_ctx, NULL, "trace", NULL, COMMAND_ANY, "trace commands");
register_command(cmd_ctx, trace_cmd, "history", handle_trace_history_command,