Use register_commands() for top-level version and init command.

Signed-off-by: Zachary T Welch <z...@superlucidity.net>
---
 src/openocd.c |   25 +++++++++++++++++++------
 1 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/src/openocd.c b/src/openocd.c
index 379373c..4d13611 100644
--- a/src/openocd.c
+++ b/src/openocd.c
@@ -159,6 +159,22 @@ COMMAND_HANDLER(handle_init_command)
        return ERROR_OK;
 }
 
+static const struct command_registration openocd_command_handlers[] = {
+               {
+                       .name = "version",
+                       .handler = &handle_version_command,
+                       .mode = COMMAND_EXEC,
+                       .help = "show program version",
+               },
+               {
+                       .name = "init",
+                       .handler = &handle_init_command,
+                       .mode = COMMAND_ANY,
+                       .help = "Initializes configured targets and servers.  "
+                               "If called more than once, does nothing.",
+               },
+       };
+
 struct command_context *global_cmd_ctx;
 
 /// src/hello.c gives a simple example for writing new command modules
@@ -171,9 +187,9 @@ struct command_context *setup_command_handler(void)
 
        global_cmd_ctx = cmd_ctx = command_init(openocd_startup_tcl);
 
-       COMMAND_REGISTER(cmd_ctx, NULL, "version", handle_version_command,
-                                        COMMAND_EXEC, "show OpenOCD version");
-
+       register_commands(cmd_ctx, NULL,
+                       ARRAY_SIZE(openocd_command_handlers),
+                       openocd_command_handlers);
        /* register subsystem commands */
        hello_register_commands(cmd_ctx);
        server_register_commands(cmd_ctx);
@@ -198,9 +214,6 @@ struct command_context *setup_command_handler(void)
 
        LOG_OUTPUT(OPENOCD_VERSION "\n");
 
-       COMMAND_REGISTER(cmd_ctx, NULL, "init", handle_init_command,
-                                        COMMAND_ANY, "initializes target and 
servers - nop on subsequent invocations");
-
        return cmd_ctx;
 }
 
-- 
1.6.4.4

_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to