Browse Source

remove register_commands from etm_capture_driver

Converts callback to an array of command_registration records.
Moves oocd_trace driver definition to end of file to eliminate
useless forward declaration.
tags/v0.4.0-rc1
Zachary T Welch 14 years ago
parent
commit
f74e2e033a
5 changed files with 17 additions and 31 deletions
  1. +1
    -6
      src/target/etb.c
  2. +3
    -2
      src/target/etm.c
  3. +1
    -1
      src/target/etm.h
  4. +1
    -6
      src/target/etm_dummy.c
  5. +11
    -16
      src/target/oocd_trace.c

+ 1
- 6
src/target/etb.c View File

@@ -421,11 +421,6 @@ static const struct command_registration etb_command_handlers[] = {
COMMAND_REGISTRATION_DONE COMMAND_REGISTRATION_DONE
}; };


static int etb_register_commands(struct command_context *cmd_ctx)
{
return register_commands(cmd_ctx, NULL, etb_command_handlers);
}

static int etb_init(struct etm_context *etm_ctx) static int etb_init(struct etm_context *etm_ctx)
{ {
struct etb *etb = etm_ctx->capture_driver_priv; struct etb *etb = etm_ctx->capture_driver_priv;
@@ -696,7 +691,7 @@ static int etb_stop_capture(struct etm_context *etm_ctx)
struct etm_capture_driver etb_capture_driver = struct etm_capture_driver etb_capture_driver =
{ {
.name = "etb", .name = "etb",
.register_commands = etb_register_commands,
.commands = etb_command_handlers,
.init = etb_init, .init = etb_init,
.status = etb_status, .status = etb_status,
.start_capture = etb_start_capture, .start_capture = etb_start_capture,


+ 3
- 2
src/target/etm.c View File

@@ -1471,8 +1471,9 @@ COMMAND_HANDLER(handle_etm_config_command)
{ {
if (strcmp(CMD_ARGV[4], etm_capture_drivers[i]->name) == 0) if (strcmp(CMD_ARGV[4], etm_capture_drivers[i]->name) == 0)
{ {
int retval;
if ((retval = etm_capture_drivers[i]->register_commands(CMD_CTX)) != ERROR_OK)
int retval = register_commands(CMD_CTX, NULL,
etm_capture_drivers[i]->commands);
if (ERROR_OK != retval)
{ {
free(etm_ctx); free(etm_ctx);
return retval; return retval;


+ 1
- 1
src/target/etm.h View File

@@ -126,7 +126,7 @@ struct etm_context;
struct etm_capture_driver struct etm_capture_driver
{ {
char *name; char *name;
int (*register_commands)(struct command_context *cmd_ctx);
const struct command_registration *commands;
int (*init)(struct etm_context *etm_ctx); int (*init)(struct etm_context *etm_ctx);
trace_status_t (*status)(struct etm_context *etm_ctx); trace_status_t (*status)(struct etm_context *etm_ctx);
int (*read_trace)(struct etm_context *etm_ctx); int (*read_trace)(struct etm_context *etm_ctx);


+ 1
- 6
src/target/etm_dummy.c View File

@@ -77,11 +77,6 @@ static const struct command_registration etm_dummy_command_handlers[] = {
COMMAND_REGISTRATION_DONE COMMAND_REGISTRATION_DONE
}; };


static int etm_dummy_register_commands(struct command_context *cmd_ctx)
{
return register_commands(cmd_ctx, NULL, etm_dummy_command_handlers);
}

static int etm_dummy_init(struct etm_context *etm_ctx) static int etm_dummy_init(struct etm_context *etm_ctx)
{ {
return ERROR_OK; return ERROR_OK;
@@ -110,7 +105,7 @@ static int etm_dummy_stop_capture(struct etm_context *etm_ctx)
struct etm_capture_driver etm_dummy_capture_driver = struct etm_capture_driver etm_dummy_capture_driver =
{ {
.name = "dummy", .name = "dummy",
.register_commands = etm_dummy_register_commands,
.commands = etm_dummy_command_handlers,
.init = etm_dummy_init, .init = etm_dummy_init,
.status = etm_dummy_status, .status = etm_dummy_status,
.start_capture = etm_dummy_start_capture, .start_capture = etm_dummy_start_capture,


+ 11
- 16
src/target/oocd_trace.c View File

@@ -30,8 +30,6 @@
*/ */




static int oocd_trace_register_commands(struct command_context *cmd_ctx);

static int oocd_trace_read_reg(struct oocd_trace *oocd_trace, int reg, uint32_t *value) static int oocd_trace_read_reg(struct oocd_trace *oocd_trace, int reg, uint32_t *value)
{ {
size_t bytes_written, bytes_read, bytes_to_read; size_t bytes_written, bytes_read, bytes_to_read;
@@ -278,17 +276,6 @@ static int oocd_trace_stop_capture(struct etm_context *etm_ctx)
return ERROR_OK; return ERROR_OK;
} }


struct etm_capture_driver oocd_trace_capture_driver =
{
.name = "oocd_trace",
.register_commands = oocd_trace_register_commands,
.init = oocd_trace_init,
.status = oocd_trace_status,
.start_capture = oocd_trace_start_capture,
.stop_capture = oocd_trace_stop_capture,
.read_trace = oocd_trace_read_trace,
};

COMMAND_HANDLER(handle_oocd_trace_config_command) COMMAND_HANDLER(handle_oocd_trace_config_command)
{ {
struct target *target; struct target *target;
@@ -438,7 +425,15 @@ static const struct command_registration oocd_trace_command_handlers[] = {
COMMAND_REGISTRATION_DONE COMMAND_REGISTRATION_DONE
}; };


int oocd_trace_register_commands(struct command_context *cmd_ctx)
struct etm_capture_driver oocd_trace_capture_driver =
{ {
return register_commands(cmd_ctx, NULL, oocd_trace_command_handlers);
}
.name = "oocd_trace",
.commands = oocd_trace_command_handlers,
.init = oocd_trace_init,
.status = oocd_trace_status,
.start_capture = oocd_trace_start_capture,
.stop_capture = oocd_trace_stop_capture,
.read_trace = oocd_trace_read_trace,
};



Loading…
Cancel
Save