summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/gdb_server.c72
-rw-r--r--src/server/server.c19
-rw-r--r--src/server/tcl_server.c17
-rw-r--r--src/server/telnet_server.c32
4 files changed, 95 insertions, 45 deletions
diff --git a/src/server/gdb_server.c b/src/server/gdb_server.c
index be1f8dbc..cb14cc3f 100644
--- a/src/server/gdb_server.c
+++ b/src/server/gdb_server.c
@@ -2326,27 +2326,55 @@ COMMAND_HANDLER(handle_gdb_breakpoint_override_command)
return ERROR_OK;
}
-int gdb_register_commands(struct command_context *command_context)
+static const struct command_registration gdb_command_handlers[] = {
+ {
+ .name = "gdb_sync",
+ .handler = &handle_gdb_sync_command,
+ .mode = COMMAND_ANY,
+ .help = "next stepi will return immediately allowing "
+ "GDB to fetch register state without affecting "
+ "target state",
+ },
+ {
+ .name = "gdb_port",
+ .handler = &handle_gdb_port_command,
+ .mode = COMMAND_ANY,
+ .help = "daemon configuration command gdb_port",
+ .usage = "<port>",
+ },
+ {
+ .name = "gdb_memory_map",
+ .handler = &handle_gdb_memory_map_command,
+ .mode = COMMAND_CONFIG,
+ .help = "enable or disable memory map",
+ .usage = "enable|disable"
+ },
+ {
+ .name = "gdb_flash_program",
+ .handler = &handle_gdb_flash_program_command,
+ .mode = COMMAND_CONFIG,
+ .help = "enable or disable flash program",
+ .usage = "enable|disable"
+ },
+ {
+ .name = "gdb_report_data_abort",
+ .handler = &handle_gdb_report_data_abort_command,
+ .mode = COMMAND_CONFIG,
+ .help = "enable or disable reporting data aborts",
+ .usage = "enable|disable"
+ },
+ {
+ .name = "gdb_breakpoint_override",
+ .handler = &handle_gdb_breakpoint_override_command,
+ .mode = COMMAND_EXEC,
+ .help = "force type of breakpoint "
+ "used by gdb 'break' commands.",
+ .usage = "hard|soft|disable",
+ },
+ COMMAND_REGISTRATION_DONE
+};
+
+int gdb_register_commands(struct command_context *cmd_ctx)
{
- COMMAND_REGISTER(command_context, NULL, "gdb_sync",
- handle_gdb_sync_command, COMMAND_ANY,
- "next stepi will return immediately allowing GDB to "
- "fetch register state without affecting target state");
- COMMAND_REGISTER(command_context, NULL, "gdb_port",
- handle_gdb_port_command, COMMAND_ANY,
- "daemon configuration command gdb_port");
- COMMAND_REGISTER(command_context, NULL, "gdb_memory_map",
- handle_gdb_memory_map_command, COMMAND_CONFIG,
- "enable or disable memory map");
- COMMAND_REGISTER(command_context, NULL, "gdb_flash_program",
- handle_gdb_flash_program_command, COMMAND_CONFIG,
- "enable or disable flash program");
- COMMAND_REGISTER(command_context, NULL, "gdb_report_data_abort",
- handle_gdb_report_data_abort_command, COMMAND_CONFIG,
- "enable or disable reporting data aborts");
- COMMAND_REGISTER(command_context, NULL, "gdb_breakpoint_override",
- handle_gdb_breakpoint_override_command, COMMAND_EXEC,
- "hard/soft/disable - force type of breakpoint "
- "used by gdb 'break' commands.");
- return ERROR_OK;
+ return register_commands(cmd_ctx, NULL, gdb_command_handlers);
}
diff --git a/src/server/server.c b/src/server/server.c
index 5be13166..50bc00eb 100644
--- a/src/server/server.c
+++ b/src/server/server.c
@@ -539,16 +539,21 @@ COMMAND_HANDLER(handle_shutdown_command)
return ERROR_COMMAND_CLOSE_CONNECTION;
}
-int server_register_commands(struct command_context *context)
+static const struct command_registration server_command_handlers[] = {
+ {
+ .name = "shutdown",
+ .handler = &handle_shutdown_command,
+ .mode = COMMAND_ANY,
+ .help = "shut the server down",
+ },
+ COMMAND_REGISTRATION_DONE
+};
+
+int server_register_commands(struct command_context *cmd_ctx)
{
- COMMAND_REGISTER(context, NULL, "shutdown",
- handle_shutdown_command, COMMAND_ANY,
- "shut the server down");
-
- return ERROR_OK;
+ return register_commands(cmd_ctx, NULL, server_command_handlers);
}
-
SERVER_PORT_COMMAND()
{
switch (CMD_ARGC) {
diff --git a/src/server/tcl_server.c b/src/server/tcl_server.c
index a12176ee..22469a4f 100644
--- a/src/server/tcl_server.c
+++ b/src/server/tcl_server.c
@@ -175,10 +175,19 @@ COMMAND_HANDLER(handle_tcl_port_command)
return CALL_COMMAND_HANDLER(server_port_command, &tcl_port);
}
+static const struct command_registration tcl_command_handlers[] = {
+ {
+ .name = "tcl_port",
+ .handler = &handle_tcl_port_command,
+ .mode = COMMAND_CONFIG,
+ .help = "port on which to listen "
+ "for incoming TCL syntax",
+ .usage = "<port>",
+ },
+ COMMAND_REGISTRATION_DONE
+};
+
int tcl_register_commands(struct command_context *cmd_ctx)
{
- COMMAND_REGISTER(cmd_ctx, NULL, "tcl_port",
- handle_tcl_port_command, COMMAND_CONFIG,
- "port on which to listen for incoming TCL syntax");
- return ERROR_OK;
+ return register_commands(cmd_ctx, NULL, tcl_command_handlers);
}
diff --git a/src/server/telnet_server.c b/src/server/telnet_server.c
index c52119da..8a86efa0 100644
--- a/src/server/telnet_server.c
+++ b/src/server/telnet_server.c
@@ -616,17 +616,25 @@ COMMAND_HANDLER(handle_exit_command)
return ERROR_COMMAND_CLOSE_CONNECTION;
}
-int telnet_register_commands(struct command_context *command_context)
+static const struct command_registration telnet_command_handlers[] = {
+ {
+ .name = "exit",
+ .handler = &handle_exit_command,
+ .mode = COMMAND_EXEC,
+ .help = "exit telnet session",
+ },
+ {
+ .name = "telnet_port",
+ .handler = &handle_telnet_port_command,
+ .mode = COMMAND_ANY,
+ .help = "port on which to listen "
+ "for incoming telnet connections",
+ .usage = "<port>",
+ },
+ COMMAND_REGISTRATION_DONE
+};
+
+int telnet_register_commands(struct command_context *cmd_ctx)
{
- COMMAND_REGISTER(command_context, NULL, "exit",
- &handle_exit_command, COMMAND_EXEC,
- "exit telnet session");
-
- COMMAND_REGISTER(command_context, NULL, "telnet_port",
- &handle_telnet_port_command, COMMAND_ANY,
- "port on which to listen for incoming telnet connections");
-
- return ERROR_OK;
+ return register_commands(cmd_ctx, NULL, telnet_command_handlers);
}
-
-