X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Fjtag%2Fft2232.c;h=29b6389ced29d94a6fe7962f0feafb374a2b608a;hb=d5e4e23f9a5b1074cd298d5386e638a9fa78b1ad;hp=451da41c052f82ab4e9e3038a8b586d1a1c88c5a;hpb=23402315ce01071f30d7ec0c5ca7563ce41f1cc6;p=openocd diff --git a/src/jtag/ft2232.c b/src/jtag/ft2232.c index 451da41c..29b6389c 100644 --- a/src/jtag/ft2232.c +++ b/src/jtag/ft2232.c @@ -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) -{ - 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 = "", + }, + { + .name = "ft2232_serial", + .handler = &ft2232_handle_serial_command, + .mode = COMMAND_CONFIG, + .help = "set the serial number of the FTDI FT2232 device", + .usage = "", + }, + { + .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 = "", + }, + { + .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 = " [...]", + }, + { + .name = "ft2232_latency", + .handler = &ft2232_handle_latency_command, + .mode = COMMAND_CONFIG, + .help = "set the FT2232 latency timer to a new value", + .usage = " [...]", + }, + 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,