-#define VID 0x1366, 0x1366, 0x1366, 0x1366
-#define PID 0x0101, 0x0102, 0x0103, 0x0104
-
-#define JLINK_WRITE_ENDPOINT 0x02
-#define JLINK_READ_ENDPOINT 0x81
-
-static unsigned int jlink_write_ep = JLINK_WRITE_ENDPOINT;
-static unsigned int jlink_read_ep = JLINK_READ_ENDPOINT;
-static unsigned int jlink_hw_jtag_version = 2;
-
-#define JLINK_USB_TIMEOUT 1000
-
-/* See Section 3.3.2 of the Segger JLink USB protocol manual */
-/* 2048 is the max value we can use here */
-#define JLINK_TAP_BUFFER_SIZE 2048
-/*#define JLINK_TAP_BUFFER_SIZE 256*/
-/*#define JLINK_TAP_BUFFER_SIZE 384*/
-
-#define JLINK_IN_BUFFER_SIZE 2048
-#define JLINK_OUT_BUFFER_SIZE (2*2048 + 4)
-#define JLINK_EMU_RESULT_BUFFER_SIZE 64
-
-/* Global USB buffers */
-static uint8_t usb_in_buffer[JLINK_IN_BUFFER_SIZE];
-static uint8_t usb_out_buffer[JLINK_OUT_BUFFER_SIZE];
-static uint8_t usb_emu_result_buffer[JLINK_EMU_RESULT_BUFFER_SIZE];
-
-/* Constants for JLink command */
-#define EMU_CMD_VERSION 0x01
-#define EMU_CMD_RESET_TRST 0x02
-#define EMU_CMD_RESET_TARGET 0x03
-#define EMU_CMD_SET_SPEED 0x05
-#define EMU_CMD_GET_STATE 0x07
-#define EMU_CMD_SET_KS_POWER 0x08
-#define EMU_CMD_GET_SPEEDS 0xc0
-#define EMU_CMD_GET_HW_INFO 0xc1
-#define EMU_CMD_GET_COUNTERS 0xc2
-#define EMU_CMD_SELECT_IF 0xc7
-#define EMU_CMD_HW_CLOCK 0xc8
-#define EMU_CMD_HW_TMS0 0xc9
-#define EMU_CMD_HW_TMS1 0xca
-#define EMU_CMD_HW_DATA0 0xcb
-#define EMU_CMD_HW_DATA1 0xcc
-#define EMU_CMD_HW_JTAG 0xcd
-#define EMU_CMD_HW_JTAG2 0xce
-#define EMU_CMD_HW_JTAG3 0xcf
-#define EMU_CMD_HW_RELEASE_RESET_STOP_EX 0xd0
-#define EMU_CMD_HW_RELEASE_RESET_STOP_TIMED 0xd1
-#define EMU_CMD_GET_MAX_MEM_BLOCK 0xd4
-#define EMU_CMD_HW_JTAG_WRITE 0xd5
-#define EMU_CMD_HW_JTAG_GET_RESULT 0xd6
-#define EMU_CMD_HW_RESET0 0xdc
-#define EMU_CMD_HW_RESET1 0xdd
-#define EMU_CMD_HW_TRST0 0xde
-#define EMU_CMD_HW_TRST1 0xdf
-#define EMU_CMD_GET_CAPS 0xe8
-#define EMU_CMD_GET_CPU_CAPS 0xe9
-#define EMU_CMD_EXEC_CPU_CMD 0xea
-#define EMU_CMD_GET_CAPS_EX 0xed
-#define EMU_CMD_GET_HW_VERSION 0xf0
-#define EMU_CMD_WRITE_DCC 0xf1
-#define EMU_CMD_READ_CONFIG 0xf2
-#define EMU_CMD_WRITE_CONFIG 0xf3
-#define EMU_CMD_WRITE_MEM 0xf4
-#define EMU_CMD_READ_MEM 0xf5
-#define EMU_CMD_MEASURE_RTCK_REACT 0xf6
-#define EMU_CMD_WRITE_MEM_ARM79 0xf7
-#define EMU_CMD_READ_MEM_ARM79 0xf8
-
-/* bits return from EMU_CMD_GET_CAPS */
-#define EMU_CAP_RESERVED_1 0
-#define EMU_CAP_GET_HW_VERSION 1
-#define EMU_CAP_WRITE_DCC 2
-#define EMU_CAP_ADAPTIVE_CLOCKING 3
-#define EMU_CAP_READ_CONFIG 4
-#define EMU_CAP_WRITE_CONFIG 5
-#define EMU_CAP_TRACE 6
-#define EMU_CAP_WRITE_MEM 7
-#define EMU_CAP_READ_MEM 8
-#define EMU_CAP_SPEED_INFO 9
-#define EMU_CAP_EXEC_CODE 10
-#define EMU_CAP_GET_MAX_BLOCK_SIZE 11
-#define EMU_CAP_GET_HW_INFO 12
-#define EMU_CAP_SET_KS_POWER 13
-#define EMU_CAP_RESET_STOP_TIMED 14
-#define EMU_CAP_RESERVED_2 15
-#define EMU_CAP_MEASURE_RTCK_REACT 16
-#define EMU_CAP_SELECT_IF 17
-#define EMU_CAP_RW_MEM_ARM79 18
-#define EMU_CAP_GET_COUNTERS 19
-#define EMU_CAP_READ_DCC 20
-#define EMU_CAP_GET_CPU_CAPS 21
-#define EMU_CAP_EXEC_CPU_CMD 22
-#define EMU_CAP_SWO 23
-#define EMU_CAP_WRITE_DCC_EX 24
-#define EMU_CAP_UPDATE_FIRMWARE_EX 25
-#define EMU_CAP_FILE_IO 26
-#define EMU_CAP_REGISTER 27
-#define EMU_CAP_INDICATORS 28
-#define EMU_CAP_TEST_NET_SPEED 29
-#define EMU_CAP_RAWTRACE 30
-#define EMU_CAP_RESERVED_3 31
-
-static char *jlink_cap_str[] = {
- "Always 1.",
- "Supports command EMU_CMD_GET_HARDWARE_VERSION",
- "Supports command EMU_CMD_WRITE_DCC",
- "Supports adaptive clocking",
- "Supports command EMU_CMD_READ_CONFIG",
- "Supports command EMU_CMD_WRITE_CONFIG",
- "Supports trace commands",
- "Supports command EMU_CMD_WRITE_MEM",
- "Supports command EMU_CMD_READ_MEM",
- "Supports command EMU_CMD_GET_SPEED",
- "Supports command EMU_CMD_CODE_...",
- "Supports command EMU_CMD_GET_MAX_BLOCK_SIZE",
- "Supports command EMU_CMD_GET_HW_INFO",
- "Supports command EMU_CMD_SET_KS_POWER",
- "Supports command EMU_CMD_HW_RELEASE_RESET_STOP_TIMED",
- "Reserved",
- "Supports command EMU_CMD_MEASURE_RTCK_REACT",
- "Supports command EMU_CMD_HW_SELECT_IF",
- "Supports command EMU_CMD_READ/WRITE_MEM_ARM79",
- "Supports command EMU_CMD_GET_COUNTERS",
- "Supports command EMU_CMD_READ_DCC",
- "Supports command EMU_CMD_GET_CPU_CAPS",
- "Supports command EMU_CMD_EXEC_CPU_CMD",
- "Supports command EMU_CMD_SWO",
- "Supports command EMU_CMD_WRITE_DCC_EX",
- "Supports command EMU_CMD_UPDATE_FIRMWARE_EX",
- "Supports command EMU_CMD_FILE_IO",
- "Supports command EMU_CMD_REGISTER",
- "Supports command EMU_CMD_INDICATORS",
- "Supports command EMU_CMD_TEST_NET_SPEED",
- "Supports command EMU_CMD_RAWTRACE",
- "Reserved",
-};