]> git.sur5r.net Git - openocd/blobdiff - src/jtag/ft2232.c
ARM11: don't expose DSCR
[openocd] / src / jtag / ft2232.c
index c1b3f1023a46d12f9a80e0a6f9f17b6fa67ff5d8..29b6389ced29d94a6fe7962f0feafb374a2b608a 100644 (file)
@@ -1949,7 +1949,7 @@ static int ft2232_init_ftd2xx(uint16_t vid, uint16_t pid, int more, int* try_mor
        {
                static const char* type_str[] =
                        {"BM", "AM", "100AX", "UNKNOWN", "2232C", "232R", "2232H", "4232H"};
-               unsigned no_of_known_types = sizeof(type_str) / sizeof(type_str[0]) - 1;
+               unsigned no_of_known_types = ARRAY_SIZE(type_str) - 1;
                unsigned type_index = ((unsigned)ftdi_device <= no_of_known_types)
                        ? ftdi_device : FT_DEVICE_UNKNOWN;
                LOG_INFO("device: %lu \"%s\"", ftdi_device, type_str[type_index]);
@@ -2034,7 +2034,7 @@ static int ft2232_init_libftdi(uint16_t vid, uint16_t pid, int more, int* try_mo
        ftdi_device = ftdic.type;
        static const char* type_str[] =
                {"AM", "BM", "2232C", "R", "2232H", "4232H", "Unknown"};
-       unsigned no_of_known_types = sizeof(type_str) / sizeof(type_str[0]) - 1;
+       unsigned no_of_known_types = ARRAY_SIZE(type_str) - 1;
        unsigned type_index = ((unsigned)ftdi_device < no_of_known_types)
                ? ftdi_device : no_of_known_types;
        LOG_DEBUG("FTDI chip type: %i \"%s\"", (int)ftdi_device, type_str[type_index]);
@@ -2803,7 +2803,7 @@ COMMAND_HANDLER(ft2232_handle_device_desc_command)
        char buf[200];
        if (CMD_ARGC == 1)
        {
-               ft2232_device_desc = strdup(args[0]);
+               ft2232_device_desc = strdup(CMD_ARGV[0]);
                cp = strchr(ft2232_device_desc, 0);
                /* under Win32, the FTD2XX driver appends an "A" to the end
                 * of the description, this examines the given desc
@@ -2835,7 +2835,7 @@ COMMAND_HANDLER(ft2232_handle_serial_command)
 {
        if (CMD_ARGC == 1)
        {
-               ft2232_serial = strdup(args[0]);
+               ft2232_serial = strdup(CMD_ARGV[0]);
        }
        else
        {
@@ -2850,8 +2850,8 @@ COMMAND_HANDLER(ft2232_handle_layout_command)
        if (CMD_ARGC == 0)
                return ERROR_OK;
 
-       ft2232_layout = malloc(strlen(args[0]) + 1);
-       strcpy(ft2232_layout, args[0]);
+       ft2232_layout = malloc(strlen(CMD_ARGV[0]) + 1);
+       strcpy(ft2232_layout, CMD_ARGV[0]);
 
        return ERROR_OK;
 }
@@ -2876,8 +2876,8 @@ COMMAND_HANDLER(ft2232_handle_vid_pid_command)
        unsigned i;
        for (i = 0; i < CMD_ARGC; i += 2)
        {
-               COMMAND_PARSE_NUMBER(u16, args[i], ft2232_vid[i >> 1]);
-               COMMAND_PARSE_NUMBER(u16, args[i + 1], ft2232_pid[i >> 1]);
+               COMMAND_PARSE_NUMBER(u16, CMD_ARGV[i], ft2232_vid[i >> 1]);
+               COMMAND_PARSE_NUMBER(u16, CMD_ARGV[i + 1], ft2232_pid[i >> 1]);
        }
 
        /*
@@ -2893,7 +2893,7 @@ COMMAND_HANDLER(ft2232_handle_latency_command)
 {
        if (CMD_ARGC == 1)
        {
-               ft2232_latency = atoi(args[0]);
+               ft2232_latency = atoi(CMD_ARGV[0]);
        }
        else
        {
@@ -3969,32 +3969,49 @@ static void ktlink_blink(void)
        buffer_write(high_direction);
 }
 
-static int ft2232_register_commands(struct command_context* cmd_ctx)
-{
-       register_command(cmd_ctx, NULL, "ft2232_device_desc",
-                       ft2232_handle_device_desc_command, COMMAND_CONFIG,
-                       "the USB device description of the FTDI FT2232 device");
-       register_command(cmd_ctx, NULL, "ft2232_serial",
-                       ft2232_handle_serial_command, COMMAND_CONFIG,
-                       "the serial number of the FTDI FT2232 device");
-       register_command(cmd_ctx, NULL, "ft2232_layout",
-                       ft2232_handle_layout_command, COMMAND_CONFIG,
-                       "the layout of the FT2232 GPIO signals used "
-                       "to control output-enables and reset signals");
-       register_command(cmd_ctx, NULL, "ft2232_vid_pid",
-                       ft2232_handle_vid_pid_command, COMMAND_CONFIG,
-                       "the vendor ID and product ID of the FTDI FT2232 device");
-       register_command(cmd_ctx, NULL, "ft2232_latency",
-                       ft2232_handle_latency_command, COMMAND_CONFIG,
-                       "set the FT2232 latency timer to a new value");
-
-       return ERROR_OK;
-}
-
+static const struct command_registration ft2232_command_handlers[] = {
+       {
+               .name = "ft2232_device_desc",
+               .handler = &ft2232_handle_device_desc_command,
+               .mode = COMMAND_CONFIG,
+               .help = "set the USB device description of the FTDI FT2232 device",
+               .usage = "<description>",
+       },
+       {
+               .name = "ft2232_serial",
+               .handler = &ft2232_handle_serial_command,
+               .mode = COMMAND_CONFIG,
+               .help = "set the serial number of the FTDI FT2232 device",
+               .usage = "<serial#>",
+       },
+       {
+               .name = "ft2232_layout",
+               .handler = &ft2232_handle_layout_command,
+               .mode = COMMAND_CONFIG,
+               .help = "set the layout of the FT2232 GPIO signals used "
+                       "to control output-enables and reset signals",
+               .usage = "<layout>",
+       },
+       {
+               .name = "ft2232_vid_pid",
+               .handler = &ft2232_handle_vid_pid_command,
+               .mode = COMMAND_CONFIG,
+               .help = "the vendor ID and product ID of the FTDI FT2232 device",
+               .usage = "<vid> <pid> [...]",
+       },
+       {
+               .name = "ft2232_latency",
+               .handler = &ft2232_handle_latency_command,
+               .mode = COMMAND_CONFIG,
+               .help = "set the FT2232 latency timer to a new value",
+               .usage = "<vid> <pid> [...]",
+       },
+       COMMAND_REGISTRATION_DONE
+};
 
 struct jtag_interface ft2232_interface = {
                .name = "ft2232",
-               .register_commands = &ft2232_register_commands,
+               .commands = ft2232_command_handlers,
                .init = &ft2232_init,
                .quit = &ft2232_quit,
                .speed = &ft2232_speed,