Change return value on error.
[fw/openocd] / src / jtag / drivers / at91rm9200.c
index ff9f7a4126046863c2747b391a9321b2db6431e9..6d0dface23a81abe5fa44fb17e29707fa28d471e 100644 (file)
@@ -21,7 +21,7 @@
 #include "config.h"
 #endif
 
-#include "interface.h"
+#include <jtag/interface.h>
 #include "bitbang.h"
 
 #include <sys/mman.h>
@@ -118,22 +118,9 @@ static void at91rm9200_write(int tck, int tms, int tdi);
 static void at91rm9200_reset(int trst, int srst);
 
 static int at91rm9200_speed(int speed);
-static int at91rm9200_register_commands(struct command_context *cmd_ctx);
 static int at91rm9200_init(void);
 static int at91rm9200_quit(void);
 
-struct jtag_interface at91rm9200_interface =
-{
-       .name = "at91rm9200",
-
-       .execute_queue = bitbang_execute_queue,
-
-       .speed = at91rm9200_speed,
-       .register_commands = at91rm9200_register_commands,
-       .init = at91rm9200_init,
-       .quit = at91rm9200_quit,
-};
-
 static struct bitbang_interface at91rm9200_bitbang =
 {
        .read = at91rm9200_read,
@@ -185,10 +172,10 @@ static int at91rm9200_speed(int speed)
        return ERROR_OK;
 }
 
-static int at91rm9200_handle_device_command(struct command_context *cmd_ctx, char *cmd, char **CMD_ARGV, int argc)
+COMMAND_HANDLER(at91rm9200_handle_device_command)
 {
        if (CMD_ARGC == 0)
-               return ERROR_OK;
+               return ERROR_COMMAND_SYNTAX_ERROR;
 
        /* only if the device name wasn't overwritten by cmdline */
        if (at91rm9200_device == 0)
@@ -207,12 +194,20 @@ static const struct command_registration at91rm9200_command_handlers[] = {
                .mode = COMMAND_CONFIG,
                .help = "query armjtagew info",
        },
+       COMMAND_REGISTRATION_DONE
 };
 
-static int at91rm9200_register_commands(struct command_context *cmd_ctx)
+struct jtag_interface at91rm9200_interface =
 {
-       return register_commands(cmd_ctx, NULL, at91rm9200_command_handlers);
-}
+       .name = "at91rm9200",
+
+       .execute_queue = bitbang_execute_queue,
+
+       .speed = at91rm9200_speed,
+       .commands = at91rm9200_command_handlers,
+       .init = at91rm9200_init,
+       .quit = at91rm9200_quit,
+};
 
 static int at91rm9200_init(void)
 {