update minidummy interface driver command handling
[openocd.git] / src / jtag / ft2232.c
index e560b22e3a4b185b8ad524a637d19bab784499e3..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]);
@@ -3969,32 +3969,49 @@ static void ktlink_blink(void)
        buffer_write(high_direction);
 }
 
-static int ft2232_register_commands(struct command_context* cmd_ctx)
-{
-       COMMAND_REGISTER(cmd_ctx, NULL, "ft2232_device_desc",
-                       ft2232_handle_device_desc_command, COMMAND_CONFIG,
-                       "the USB device description of the FTDI FT2232 device");
-       COMMAND_REGISTER(cmd_ctx, NULL, "ft2232_serial",
-                       ft2232_handle_serial_command, COMMAND_CONFIG,
-                       "the serial number of the FTDI FT2232 device");
-       COMMAND_REGISTER(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");
-       COMMAND_REGISTER(cmd_ctx, NULL, "ft2232_vid_pid",
-                       ft2232_handle_vid_pid_command, COMMAND_CONFIG,
-                       "the vendor ID and product ID of the FTDI FT2232 device");
-       COMMAND_REGISTER(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,

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)