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
[email protected]
https://lists.sourceforge.net/lists/listinfo/urjtag-development