Some devices based on the FT2232 use the second interface, so add a way to set the interface field. --- urjtag/src/tap/cable/dirtyjtag.c | 2 +- urjtag/src/tap/cable/ft2232.c | 44 +++++++++++++------------- urjtag/src/tap/cable/generic_usbconn.h | 4 +-- urjtag/src/tap/cable/ice100.c | 4 +-- urjtag/src/tap/cable/jlink.c | 2 +- urjtag/src/tap/cable/usbblaster.c | 8 ++--- urjtag/src/tap/cable/vsllink.c | 2 +- urjtag/src/tap/cable/xpc.c | 4 +-- urjtag/src/tap/usbconn/libftdx.h | 14 ++++---- 9 files changed, 42 insertions(+), 42 deletions(-)
diff --git a/urjtag/src/tap/cable/dirtyjtag.c b/urjtag/src/tap/cable/dirtyjtag.c index 94473e09..e8400935 100644 --- a/urjtag/src/tap/cable/dirtyjtag.c +++ b/urjtag/src/tap/cable/dirtyjtag.c @@ -338,4 +338,4 @@ const urj_cable_driver_t urj_tap_cable_dirtyjtag_driver = { urj_tap_cable_generic_flush_using_transfer, urj_tap_cable_generic_usbconn_help }; -URJ_DECLARE_USBCONN_CABLE(0x1209, 0xC0CA, "libusb", "dirtyjtag", dirtyjtag, NULL) +URJ_DECLARE_USBCONN_CABLE(0x1209, 0xC0CA, "libusb", "dirtyjtag", dirtyjtag, NULL, 0) diff --git a/urjtag/src/tap/cable/ft2232.c b/urjtag/src/tap/cable/ft2232.c index 3d029f39..2407ab9c 100644 --- a/urjtag/src/tap/cable/ft2232.c +++ b/urjtag/src/tap/cable/ft2232.c @@ -2589,7 +2589,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0000, 0x0000, "-mpsse", "FT2232", ft2232, NULL) +URJ_DECLARE_FTDX_CABLE(0x0000, 0x0000, "-mpsse", "FT2232", ft2232, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_armusbocd_driver = { "ARM-USB-OCD", @@ -2609,8 +2609,8 @@ const urj_cable_driver_t urj_tap_cable_ft2232_armusbocd_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x15BA, 0x0003, "-mpsse", "ARM-USB-OCD", armusbocd, NULL) -URJ_DECLARE_FTDX_CABLE(0x15BA, 0x0004, "-mpsse", "ARM-USB-OCD", armusbocdtiny, NULL) +URJ_DECLARE_FTDX_CABLE(0x15BA, 0x0003, "-mpsse", "ARM-USB-OCD", armusbocd, NULL, 0) +URJ_DECLARE_FTDX_CABLE(0x15BA, 0x0004, "-mpsse", "ARM-USB-OCD", armusbocdtiny, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_armusbtiny_h_driver = { "ARM-USB-OCD-H", @@ -2630,8 +2630,8 @@ const urj_cable_driver_t urj_tap_cable_ft2232_armusbtiny_h_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x15BA, 0x002A, "-mpsse", "ARM-USB-TINY-H", armusbtiny_h, NULL) -URJ_DECLARE_FTDX_CABLE(0x15BA, 0x002B, "-mpsse", "ARM-USB-OCD-H", armusbocd_h, NULL) +URJ_DECLARE_FTDX_CABLE(0x15BA, 0x002A, "-mpsse", "ARM-USB-TINY-H", armusbtiny_h, NULL, 0) +URJ_DECLARE_FTDX_CABLE(0x15BA, 0x002B, "-mpsse", "ARM-USB-OCD-H", armusbocd_h, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_gnice_driver = { "gnICE", @@ -2651,7 +2651,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_gnice_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0456, 0xF000, "-mpsse", "gnICE", gnice, NULL) +URJ_DECLARE_FTDX_CABLE(0x0456, 0xF000, "-mpsse", "gnICE", gnice, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_gniceplus_driver = { "gnICE+", @@ -2671,7 +2671,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_gniceplus_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0456, 0xF001, "-mpsse", "gnICE+", gniceplus, NULL) +URJ_DECLARE_FTDX_CABLE(0x0456, 0xF001, "-mpsse", "gnICE+", gniceplus, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_jtagkey_driver = { "JTAGkey", @@ -2691,7 +2691,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_jtagkey_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0xCFF8, "-mpsse", "JTAGkey", jtagkey, NULL) +URJ_DECLARE_FTDX_CABLE(0x0403, 0xCFF8, "-mpsse", "JTAGkey", jtagkey, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_oocdlinks_driver = { "OOCDLink-s", @@ -2711,7 +2711,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_oocdlinks_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0xbaf8, "-mpsse", "OOCDLink-s", oocdlinks, NULL) +URJ_DECLARE_FTDX_CABLE(0x0403, 0xbaf8, "-mpsse", "OOCDLink-s", oocdlinks, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_turtelizer2_driver = { "Turtelizer2", @@ -2731,7 +2731,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_turtelizer2_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0xBDC8, "-mpsse", "Turtelizer2", turtelizer2, NULL) +URJ_DECLARE_FTDX_CABLE(0x0403, 0xBDC8, "-mpsse", "Turtelizer2", turtelizer2, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_usbjtagrs232_driver = { "USB-JTAG-RS232", @@ -2751,7 +2751,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_usbjtagrs232_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x1457, 0x5118, "-mpsse", "USB-JTAG-RS232", usbjtagrs232, NULL) +URJ_DECLARE_FTDX_CABLE(0x1457, 0x5118, "-mpsse", "USB-JTAG-RS232", usbjtagrs232, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_usbtojtagif_driver = { "USB-to-JTAG-IF", @@ -2771,7 +2771,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_usbtojtagif_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0000, 0x0000, "-mpsse", "USB-to-JTAG-IF", usbtojtagif, NULL) +URJ_DECLARE_FTDX_CABLE(0x0000, 0x0000, "-mpsse", "USB-to-JTAG-IF", usbtojtagif, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_signalyzer_driver = { "Signalyzer", @@ -2791,7 +2791,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_signalyzer_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0xbca1, "-mpsse", "Signalyzer", signalyzer, NULL) +URJ_DECLARE_FTDX_CABLE(0x0403, 0xbca1, "-mpsse", "Signalyzer", signalyzer, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_flyswatter_driver = { "Flyswatter", @@ -2811,7 +2811,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_flyswatter_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0x6010, "-mpsse", "Flyswatter", flyswatter, "Flyswatter") +URJ_DECLARE_FTDX_CABLE(0x0403, 0x6010, "-mpsse", "Flyswatter", flyswatter, "Flyswatter", 0) const urj_cable_driver_t urj_tap_cable_ft2232_usbscarab2_driver = { "usbScarab2", @@ -2831,7 +2831,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_usbscarab2_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0xbbe0, "-mpsse", "usbScarab2", usbscarab2, NULL) +URJ_DECLARE_FTDX_CABLE(0x0403, 0xbbe0, "-mpsse", "usbScarab2", usbscarab2, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_ktlink_driver = { "KT-LINK", @@ -2851,7 +2851,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_ktlink_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0xbbe2, "-mpsse", "KT-LINK", ktlink, NULL) +URJ_DECLARE_FTDX_CABLE(0x0403, 0xbbe2, "-mpsse", "KT-LINK", ktlink, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_milkymist_driver = { "milkymist", @@ -2871,7 +2871,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_milkymist_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x20b7, 0x0713, "-mpsse", "milkymist", milkymist, NULL) +URJ_DECLARE_FTDX_CABLE(0x20b7, 0x0713, "-mpsse", "milkymist", milkymist, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_digilenths1_driver = { "DigilentHS1", @@ -2891,7 +2891,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_digilenths1_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0x6010, "-mpsse", "DigilentHS1", digilenths1, "Digilent Adept USB Device") +URJ_DECLARE_FTDX_CABLE(0x0403, 0x6010, "-mpsse", "DigilentHS1", digilenths1, "Digilent Adept USB Device", 0) const urj_cable_driver_t urj_tap_cable_ft2232_digilentnexysvideo_driver = { "DigilentNexysVideo", @@ -2911,7 +2911,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_digilentnexysvideo_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0x6010, "-mpsse", "DigilentNexysVideo", digilentnexysvideo, "Digilent USB Device") +URJ_DECLARE_FTDX_CABLE(0x0403, 0x6010, "-mpsse", "DigilentNexysVideo", digilentnexysvideo, "Digilent USB Device", 0) const urj_cable_driver_t urj_tap_cable_ft2232_ft4232_driver = { "FT4232", @@ -2931,7 +2931,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_ft4232_driver = { ft2232_flush, ftdx_usbcable_extended_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0x6011, "-mpsse", "FT4232", ft4232, NULL) +URJ_DECLARE_FTDX_CABLE(0x0403, 0x6011, "-mpsse", "FT4232", ft4232, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_jtagv3_driver = { "JTAGv3", @@ -2951,7 +2951,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_jtagv3_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0xa6d0, "-mpsse", "JTAGv3", jtagv3, NULL) +URJ_DECLARE_FTDX_CABLE(0x0403, 0xa6d0, "-mpsse", "JTAGv3", jtagv3, NULL, 0) const urj_cable_driver_t urj_tap_cable_ft2232_jtagv5_driver = { "JTAGv5", @@ -2971,7 +2971,7 @@ const urj_cable_driver_t urj_tap_cable_ft2232_jtagv5_driver = { ft2232_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x0403, 0xa6d0, "-mpsse", "JTAGv5", jtagv5, NULL) +URJ_DECLARE_FTDX_CABLE(0x0403, 0xa6d0, "-mpsse", "JTAGv5", jtagv5, NULL, 0) /* Local Variables: diff --git a/urjtag/src/tap/cable/generic_usbconn.h b/urjtag/src/tap/cable/generic_usbconn.h index dada04bd..42f33213 100644 --- a/urjtag/src/tap/cable/generic_usbconn.h +++ b/urjtag/src/tap/cable/generic_usbconn.h @@ -51,7 +51,7 @@ void urj_tap_cable_generic_usbconn_help_ex (urj_log_level_t ll, const char *cabl "INTERFACE Interface to use (0=first, 1=second, etc).\n" \ "INDEX Number of matching device (0=first, 1=second, etc).\n" -#define URJ_DECLARE_USBCONN_CABLE(vid, pid, driver, name, cable, desc) \ -const urj_usbconn_cable_t urj_tap_cable_usbconn_##cable = { name, desc, driver, vid, pid }; +#define URJ_DECLARE_USBCONN_CABLE(vid, pid, driver, name, cable, desc, interface) \ +const urj_usbconn_cable_t urj_tap_cable_usbconn_##cable = { name, desc, driver, vid, pid, interface, 0 }; #endif /* URJ_TAP_CABLE_GENERIC_H */ diff --git a/urjtag/src/tap/cable/ice100.c b/urjtag/src/tap/cable/ice100.c index 81603d10..8e54b54c 100644 --- a/urjtag/src/tap/cable/ice100.c +++ b/urjtag/src/tap/cable/ice100.c @@ -1901,8 +1901,8 @@ const urj_cable_driver_t urj_tap_cable_ice100B_driver = { ice_cable_help, URJ_CABLE_QUIRK_ONESHOT }; -URJ_DECLARE_USBCONN_CABLE(0x064B, 0x1225, "libusb", "ICE-100B", ice100B, NULL) -URJ_DECLARE_USBCONN_CABLE(0x064B, 0x0225, "libusb", "ICE-100B", ice100Bw, NULL) +URJ_DECLARE_USBCONN_CABLE(0x064B, 0x1225, "libusb", "ICE-100B", ice100B, NULL, 0) +URJ_DECLARE_USBCONN_CABLE(0x064B, 0x0225, "libusb", "ICE-100B", ice100Bw, NULL, 0) /* Local Variables: diff --git a/urjtag/src/tap/cable/jlink.c b/urjtag/src/tap/cable/jlink.c index e637ed91..72c790bf 100644 --- a/urjtag/src/tap/cable/jlink.c +++ b/urjtag/src/tap/cable/jlink.c @@ -720,4 +720,4 @@ const urj_cable_driver_t urj_tap_cable_jlink_driver = { urj_tap_cable_generic_flush_using_transfer, urj_tap_cable_generic_usbconn_help }; -URJ_DECLARE_USBCONN_CABLE(0x1366, 0x0101, "libusb", "jlink", jlink, NULL) +URJ_DECLARE_USBCONN_CABLE(0x1366, 0x0101, "libusb", "jlink", jlink, NULL, 0) diff --git a/urjtag/src/tap/cable/usbblaster.c b/urjtag/src/tap/cable/usbblaster.c index bc686bf0..ce6f1452 100644 --- a/urjtag/src/tap/cable/usbblaster.c +++ b/urjtag/src/tap/cable/usbblaster.c @@ -515,7 +515,7 @@ const urj_cable_driver_t urj_tap_cable_usbblaster_driver = { usbblaster_flush, ftdx_usbcable_help }; -URJ_DECLARE_FTDX_CABLE(0x09FB, 0x6001, "", "UsbBlaster", usbblaster, NULL) -URJ_DECLARE_FTDX_CABLE(0x09FB, 0x6002, "", "UsbBlaster", cubic_cyclonium, NULL) -URJ_DECLARE_FTDX_CABLE(0x09FB, 0x6003, "", "UsbBlaster", nios_eval, NULL) -URJ_DECLARE_FTDX_CABLE(0x16C0, 0x06AD, "", "UsbBlaster", usb_jtag, NULL) +URJ_DECLARE_FTDX_CABLE(0x09FB, 0x6001, "", "UsbBlaster", usbblaster, NULL, 0) +URJ_DECLARE_FTDX_CABLE(0x09FB, 0x6002, "", "UsbBlaster", cubic_cyclonium, NULL, 0) +URJ_DECLARE_FTDX_CABLE(0x09FB, 0x6003, "", "UsbBlaster", nios_eval, NULL, 0) +URJ_DECLARE_FTDX_CABLE(0x16C0, 0x06AD, "", "UsbBlaster", usb_jtag, NULL, 0) diff --git a/urjtag/src/tap/cable/vsllink.c b/urjtag/src/tap/cable/vsllink.c index 91e2c9c4..dee49ca2 100644 --- a/urjtag/src/tap/cable/vsllink.c +++ b/urjtag/src/tap/cable/vsllink.c @@ -575,4 +575,4 @@ const urj_cable_driver_t urj_tap_cable_vsllink_driver = { urj_tap_cable_generic_flush_using_transfer, urj_tap_cable_generic_usbconn_help }; -URJ_DECLARE_USBCONN_CABLE (0x0483, 0x5740, "libusb", "vsllink", vsllink, NULL) +URJ_DECLARE_USBCONN_CABLE (0x0483, 0x5740, "libusb", "vsllink", vsllink, NULL, 0) diff --git a/urjtag/src/tap/cable/xpc.c b/urjtag/src/tap/cable/xpc.c index 3d24cd10..6e7a8cfd 100644 --- a/urjtag/src/tap/cable/xpc.c +++ b/urjtag/src/tap/cable/xpc.c @@ -704,7 +704,7 @@ const urj_cable_driver_t urj_tap_cable_xpc_int_driver = { urj_tap_cable_generic_flush_using_transfer, urj_tap_cable_generic_usbconn_help }; -URJ_DECLARE_USBCONN_CABLE(0x03FD, 0x0008, "libusb", "xpc_int", xpc_int, NULL) +URJ_DECLARE_USBCONN_CABLE(0x03FD, 0x0008, "libusb", "xpc_int", xpc_int, NULL, 0) const urj_cable_driver_t urj_tap_cable_xpc_ext_driver = { "xpc_ext", @@ -724,4 +724,4 @@ const urj_cable_driver_t urj_tap_cable_xpc_ext_driver = { urj_tap_cable_generic_flush_using_transfer, urj_tap_cable_generic_usbconn_help }; -URJ_DECLARE_USBCONN_CABLE(0x03FD, 0x0008, "libusb", "xpc_ext", xpc_ext, NULL) +URJ_DECLARE_USBCONN_CABLE(0x03FD, 0x0008, "libusb", "xpc_ext", xpc_ext, NULL, 0) diff --git a/urjtag/src/tap/usbconn/libftdx.h b/urjtag/src/tap/usbconn/libftdx.h index ae7bfae8..56277e59 100644 --- a/urjtag/src/tap/usbconn/libftdx.h +++ b/urjtag/src/tap/usbconn/libftdx.h @@ -42,19 +42,19 @@ * Helpers to avoid having to copy & paste ifdef's everywhere */ #ifdef ENABLE_LOWLEVEL_FTDI -#define _URJ_DECLARE_FTDI_CABLE(v, p, d, n, c, desc) URJ_DECLARE_USBCONN_CABLE(v, p, d, n, c, desc) +#define _URJ_DECLARE_FTDI_CABLE(v, p, d, n, c, desc, interface) URJ_DECLARE_USBCONN_CABLE(v, p, d, n, c, desc, interface) #else -#define _URJ_DECLARE_FTDI_CABLE(v, p, d, n, c, desc) +#define _URJ_DECLARE_FTDI_CABLE(v, p, d, n, c, desc, interface) #endif #ifdef ENABLE_LOWLEVEL_FTD2XX -#define _URJ_DECLARE_FTD2XX_CABLE(v, p, d, n, c, desc) URJ_DECLARE_USBCONN_CABLE(v, p, d, n, c, desc) +#define _URJ_DECLARE_FTD2XX_CABLE(v, p, d, n, c, desc, interface) URJ_DECLARE_USBCONN_CABLE(v, p, d, n, c, desc, interface) #else -#define _URJ_DECLARE_FTD2XX_CABLE(v, p, d, n, c, desc) +#define _URJ_DECLARE_FTD2XX_CABLE(v, p, d, n, c, desc, interface) #endif -#define URJ_DECLARE_FTDX_CABLE(v, p, d, n, c, desc) \ - _URJ_DECLARE_FTDI_CABLE(v, p, "ftdi"d, n, c##_ftdi, desc) \ - _URJ_DECLARE_FTD2XX_CABLE(v, p, "ftd2xx"d, n, c##_ftd2xx, desc) +#define URJ_DECLARE_FTDX_CABLE(v, p, d, n, c, desc, interface) \ + _URJ_DECLARE_FTDI_CABLE(v, p, "ftdi"d, n, c##_ftdi, desc, interface) \ + _URJ_DECLARE_FTD2XX_CABLE(v, p, "ftd2xx"d, n, c##_ftd2xx, desc, interface) void ftdx_usbcable_help (urj_log_level_t ll, const char *cablename); void ftdx_usbcable_extended_help (urj_log_level_t ll, const char *cablename); -- 2.31.1 _______________________________________________ UrJTAG-development mailing list UrJTAG-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/urjtag-development