Author: hselasky
Date: Sun Aug  5 11:50:56 2012
New Revision: 239055
URL: http://svn.freebsd.org/changeset/base/239055

Log:
  Update the list of devices supported by the FTDI driver. It might be
  that the wrong UART reference clock will be used for a few of the IDs.
  It is currently not possible to figure that out because the Linux FTDI
  driver detects this run-time and not compile time based on the bcdDevice
  field of the USB device descriptor. Some of the ID's in usbdevs are not
  sorted according to the product ID value. Please feel free to fix this.
  I'm out of my xemacs magic today.
  
  This syncronises us with the linux kernel at kernel.org (HEAD).
  
  MFC after:    2 weeks

Modified:
  head/sys/dev/usb/serial/uftdi.c
  head/sys/dev/usb/serial/uftdi_reg.h
  head/sys/dev/usb/usbdevs

Modified: head/sys/dev/usb/serial/uftdi.c
==============================================================================
--- head/sys/dev/usb/serial/uftdi.c     Sun Aug  5 11:29:44 2012        
(r239054)
+++ head/sys/dev/usb/serial/uftdi.c     Sun Aug  5 11:50:56 2012        
(r239055)
@@ -209,32 +209,228 @@ MODULE_VERSION(uftdi, 1);
 static const STRUCT_USB_HOST_ID uftdi_devs[] = {
 #define        UFTDI_DEV(v, p, i) \
   { USB_VPI(USB_VENDOR_##v, USB_PRODUCT_##v##_##p, i) }
+       UFTDI_DEV(ACTON, SPECTRAPRO, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ALTI2, N3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ANALOGDEVICES, GNICE, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(ANALOGDEVICES, GNICEPLUS, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
        UFTDI_DEV(ATMEL, STK541, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(BAYER, CONTOUR_CABLE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, 232USB9M, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, 485USB9F_2W, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, 485USB9F_4W, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, 485USBTB_2W, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, 485USBTB_4W, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, TTL3USB9M, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, TTL5USB9M, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, USO9ML2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, USO9ML2DR, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, USO9ML2DR_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, USOPTL4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, USOPTL4DR, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, USOPTL4DR2, UFTDI_TYPE_AUTO),
        UFTDI_DEV(BBELECTRONICS, USOTL4, UFTDI_TYPE_8U232AM),
-       UFTDI_DEV(DRESDENELEKTRONIK, SENSORTERMINALBOARD,
-           UFTDI_TYPE_8U232AM),
-       UFTDI_DEV(DRESDENELEKTRONIK, WIRELESSHANDHELDTERMINAL,
-           UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(BBELECTRONICS, USPTL4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, USTL4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(BBELECTRONICS, ZZ_PROG1_USB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(CONTEC, COM1USBH, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(DRESDENELEKTRONIK, SENSORTERMINALBOARD, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(DRESDENELEKTRONIK, WIRELESSHANDHELDTERMINAL, 
UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(ELEKTOR, FT323R, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(EVOLUTION, ER1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(EVOLUTION, HYBRID, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(EVOLUTION, RCM4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FALCOM, SAMBA, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FALCOM, TWIST, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FIC, NEO1973_DEBUG, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(FIC, NEO1973_DEBUG, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(FTDI, 232H, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, 232RL, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, 4N_GALAXY_DE_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, 4N_GALAXY_DE_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, 4N_GALAXY_DE_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, 8U232AM_ALT, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ACCESSO, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ACG_HFDUAL, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ACTIVE_ROBOTS, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ACTZWAVE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, AMC232, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ARTEMIS, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ASK_RDR400, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ATIK_ATK16, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ATIK_ATK16C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ATIK_ATK16HR, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ATIK_ATK16HRC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ATIK_ATK16IC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, BCS_SE923, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, BEAGLEBONE, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, CANDAPTER, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CANUSB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CCSICDU20_0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CCSICDU40_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CCSICDU64_4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CCSLOAD_N_GO_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CCSMACHX_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CCSPRIME8_5, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, CFA_631, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, CFA_632, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, CFA_633, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, CFA_634, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, CFA_635, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, CHAMSYS_24_MASTER_WING, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CHAMSYS_MAXI_WING, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CHAMSYS_MEDIA_WING, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CHAMSYS_MIDI_TIMECODE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CHAMSYS_MINI_WING, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CHAMSYS_PC_WING, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CHAMSYS_USB_DMX, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CHAMSYS_WING, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, COM4SM, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CONVERTER_0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CONVERTER_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CONVERTER_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CONVERTER_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CONVERTER_4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CONVERTER_5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CONVERTER_6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, CONVERTER_7, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, CTI_USB_MINI_485, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, CTI_USB_NANO_485, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, DMX4ALL, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, DOMINTELL_DGQG, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, DOMINTELL_DUSB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, DOTEC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ECLO_COM_1WIRE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ECO_PRO_CDS, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, EISCOU, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, ELSTER_UNICOM, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_ALC8500, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_CLI7000, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_CSI8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_EC3000, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_EM1000DL, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_EM1010PC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_FEM, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_FHZ1000PC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_FHZ1300PC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_FM3RX, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_FS20SIG, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_HS485, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_KL100, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_MSM1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_PCD200, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_PCK100, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_PPS7330, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_RFP500, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_T1100, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_TFD128, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_TFM100, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_TWS550, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_UAD8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_UDA7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_UDF77, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_UIO88, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_ULA200, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_UM100, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_UMS100, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_UO100, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_UR100, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_USI2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_USR, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_UTP8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_WS300PC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_WS444PC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_WS500, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_WS550, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_WS777, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, ELV_WS888, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, EMCU2D, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, EMCU2H, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, FUTURE_0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, FUTURE_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, FUTURE_2, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, GAMMASCOUT, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, GENERIC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E808, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E809, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E80A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E80B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E80C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E80D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E80E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E80F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E88D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E88E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, GUDEADS_E88F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, HD_RADIO, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, HO720, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, HO730, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, HO820, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, HO870, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IBS_APP70, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IBS_PCMCIA, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IBS_PEDO, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IBS_PICPRO, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IBS_PK1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IBS_PROD, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IBS_RS232MON, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IBS_US485, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IPLUS, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IPLUS2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, IRTRANS, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, KBS, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, LENZ_LIUSB, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, LK202, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, LK204, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, LM3S_DEVEL_BOARD, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(FTDI, LM3S_EVAL_BOARD, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(FTDI, MASTERDEVEL2, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, MAXSTREAM, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, MHAM_DB9, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, MHAM_IC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, MHAM_KW, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, MHAM_RS232, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, MHAM_Y6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, MHAM_Y8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, MHAM_Y9, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, MHAM_YS, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, MICRO_CHAMELEON, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, MTXORB_5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, MTXORB_6, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, MX2_3, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, MX4_5, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, NXTCAM, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, OCEANIC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, OOCDLINK, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(FTDI, OPENDCC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, OPENDCC_GATEWAY, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, OPENDCC_GBM, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, OPENDCC_SNIFFER, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, OPENDCC_THROTTLE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, PCDJ_DAC2, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, PCMSFU, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, PERLE_ULTRAPORT, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, PHI_FISCO, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, PIEGROUP, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, PROPOX_JTAGCABLEII, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, R2000KU_TRUE_RNG, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, R2X0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, RELAIS, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, REU_TINY, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, RMP200, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, RM_CANVIEW, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, RRCIRKITS_LOCOBUFFER, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCIENCESCOPE_HS_LOGBOOK, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCIENCESCOPE_LOGBOOKML, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCIENCESCOPE_LS_LOGBOOK, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCS_DEVICE_0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCS_DEVICE_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCS_DEVICE_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCS_DEVICE_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCS_DEVICE_4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCS_DEVICE_5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCS_DEVICE_6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SCS_DEVICE_7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SDMUSBQSS, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, SEMC_DSS20, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, SERIAL_2232C, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, SERIAL_2232D, UFTDI_TYPE_8U232AM),
@@ -242,20 +438,405 @@ static const STRUCT_USB_HOST_ID uftdi_de
        UFTDI_DEV(FTDI, SERIAL_8U100AX, UFTDI_TYPE_SIO),
        UFTDI_DEV(FTDI, SERIAL_8U232AM, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, SERIAL_8U232AM4, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, SIGNALYZER_SH2, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(FTDI, SIGNALYZER_SH4, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(FTDI, SIGNALYZER_SLITE, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(FTDI, SIGNALYZER_ST, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(FTDI, SPECIAL_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SPECIAL_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SPECIAL_4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SPROG_II, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SR_RADIO, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, SUUNTO_SPORTS, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, TACTRIX_OPENPORT_13M, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, TACTRIX_OPENPORT_13S, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, TACTRIX_OPENPORT_13U, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, TAVIR_STK500, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, TERATRONIK_D2XX, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, TERATRONIK_VCP, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, THORLABS, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, TNC_X, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, TTUSB, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, TURTELIZER2, UFTDI_TYPE_8U232AM | UFTDI_FLAG_JTAG),
        UFTDI_DEV(FTDI, UOPTBR, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(FTDI, USBSERIAL, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, USBX_707, UFTDI_TYPE_AUTO),
        UFTDI_DEV(FTDI, USB_UIRT, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(FTDI, USINT_CAT, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, USINT_RS232, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, USINT_WKEY, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, VARDAAN, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, VNHCPCUSB_D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, WESTREX_MODEL_777, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, WESTREX_MODEL_8900F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, XF_547, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, XF_640, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, XF_642, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, XM_RADIO, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(FTDI, YEI_SERVOCENTER31, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(GNOTOMETRICS, USB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, SP1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, OPC_U_UC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, RP2C1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, RP2C2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, RP2D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, RP2KVR, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, RP2KVT, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, RP2VR, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, RP2VT, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, RP4KVR, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(ICOM, RP4KVT, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(IDTECH, IDT1221U, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(INTERBIOMETRICS, IOBOARD, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(INTERBIOMETRICS, MINI_IOBOARD, UFTDI_TYPE_AUTO),
        UFTDI_DEV(INTREPIDCS, NEOVI, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(INTREPIDCS, VALUECAN, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(IONICS, PLUGCOMPUTER, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(JETI, SPC1201, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(KOBIL, CONV_B1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(KOBIL, CONV_KAAN, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(LARSENBRUSGAARD, ALTITRACK, UFTDI_TYPE_AUTO),
        UFTDI_DEV(MARVELL, SHEEVAPLUG, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0100, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0101, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0102, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0103, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0104, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0105, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0106, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0107, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0108, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0109, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_010A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_010B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_010C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_010D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_010E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_010F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0110, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0111, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0112, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0113, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0114, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0115, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0116, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0117, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0118, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0119, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_011A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_011B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_011C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_011D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_011E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_011F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0120, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0121, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0122, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0123, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0124, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0125, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0126, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0128, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0129, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_012A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_012B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_012D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_012E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_012F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0130, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0131, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0132, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0133, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0134, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0135, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0136, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0137, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0138, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0139, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_013A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_013B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_013C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_013D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_013E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_013F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0140, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0141, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0142, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0143, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0144, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0145, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0146, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0147, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0148, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0149, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_014A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_014B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_014C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_014D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_014E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_014F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0150, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0151, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0152, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0159, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_015A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_015B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_015C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_015D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_015E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_015F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0160, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0161, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0162, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0163, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0164, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0165, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0166, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0167, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0168, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0169, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_016A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_016B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_016C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_016D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_016E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_016F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0170, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0171, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0172, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0173, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0174, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0175, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0176, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0177, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0178, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0179, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_017A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_017B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_017C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_017D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_017E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_017F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0180, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0181, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0182, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0183, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0184, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0185, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0186, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0187, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0188, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0189, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_018A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_018B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_018C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_018D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_018E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_018F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0190, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0191, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0192, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0193, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0194, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0195, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0196, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0197, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0198, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_0199, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_019A, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_019B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_019C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_019D, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_019E, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_019F, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01A0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01A1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01A2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01A3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01A4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01A5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01A6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01A7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01A8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01A9, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01AA, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01AB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01AC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01AD, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01AE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01AF, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01B0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01B1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01B2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01B3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01B4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01B5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01B6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01B7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01B8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01B9, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01BA, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01BB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01BC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01BD, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01BE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01BF, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01C0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01C1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01C2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01C3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01C4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01C5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01C6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01C7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01C8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01C9, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01CA, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01CB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01CC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01CD, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01CE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01CF, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01D0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01D1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01D2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01D3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01D4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01D5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01D6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01D7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01D8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01D9, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01DA, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01DB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01DC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01DD, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01DE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01DF, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01E0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01E1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01E2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01E3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01E4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01E5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01E6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01E7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01E8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01E9, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01EA, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01EB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01EC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01ED, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01EE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01EF, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01F0, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01F1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01F2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01F3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01F4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01F5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01F6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01F7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01F8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01F9, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01FA, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01FB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01FC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01FD, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01FE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MATRIXORBITAL, FTDI_RANGE_01FF, UFTDI_TYPE_AUTO),
        UFTDI_DEV(MATRIXORBITAL, MOUA, UFTDI_TYPE_8U232AM),
        UFTDI_DEV(MELCO, PCOPRS1, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(METAGEEK, TELLSTICK, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(MOBILITY, USB_SERIAL, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(OLIMEX, ARM_USB_OCD, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(OLIMEX, ARM_USB_OCD_H, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
+       UFTDI_DEV(PAPOUCH, AD4USB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, AP485, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, AP485_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, DRAK5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, DRAK6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, GMSR, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, GMUX, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, IRAMP, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, LEC, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, MU, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, QUIDO10X1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, QUIDO2X16, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, QUIDO2X2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, QUIDO30X3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, QUIDO3X32, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, QUIDO4X4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, QUIDO60X3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, QUIDO8X8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, SB232, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, SB422, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, SB422_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, SB485, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, SB485C, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, SB485S, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, SB485_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, SIMUKEY, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, TMU, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(PAPOUCH, UPSUSB, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(POSIFLEX, PP7000, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(QIHARDWARE, JTAGSERIAL, UFTDI_TYPE_AUTO | UFTDI_FLAG_JTAG),
        UFTDI_DEV(RATOC, REXUSB60F, UFTDI_TYPE_8U232AM),
-       UFTDI_DEV(SIIG2, US2308, UFTDI_TYPE_8U232AM)
+       UFTDI_DEV(RTSYSTEMS, CT29B, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(RTSYSTEMS, SERIAL_VX7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2101, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2102, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2103, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2104, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2106, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2201_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2201_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2202_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2202_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2203_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2203_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2401_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2401_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2401_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2401_4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2402_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2402_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2402_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2402_4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2403_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2403_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2403_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2403_4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2801_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2801_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2801_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2801_4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2801_5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2801_6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2801_7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2801_8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2802_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2802_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2802_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2802_4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2802_5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2802_6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2802_7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2802_8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2803_1, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2803_2, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2803_3, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2803_4, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2803_5, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2803_6, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2803_7, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SEALEVEL, 2803_8, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SIIG2, DK201, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(SIIG2, US2308, UFTDI_TYPE_8U232AM),
+       UFTDI_DEV(TESTO, USB_INTERFACE, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(TML, USB_SERIAL, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(TTI, QL355P, UFTDI_TYPE_AUTO),
+       UFTDI_DEV(UNKNOWN4, NF_RIC, UFTDI_TYPE_AUTO),
 #undef UFTDI_DEV
 };
 
@@ -314,6 +895,17 @@ uftdi_attach(device_t dev)
        sc->sc_type = USB_GET_DRIVER_INFO(uaa) & UFTDI_TYPE_MASK;
 
        switch (sc->sc_type) {
+       case UFTDI_TYPE_AUTO:
+               /* simplified type check */
+               if (uaa->info.bcdDevice >= 0x0200 ||
+                   usbd_get_iface(uaa->device, 1) != NULL) {
+                       sc->sc_type = UFTDI_TYPE_8U232AM;
+                       sc->sc_hdrlen = 0;
+               } else {
+                       sc->sc_type = UFTDI_TYPE_SIO;
+                       sc->sc_hdrlen = 1;
+               }
+               break;
        case UFTDI_TYPE_SIO:
                sc->sc_hdrlen = 1;
                break;

Modified: head/sys/dev/usb/serial/uftdi_reg.h
==============================================================================
--- head/sys/dev/usb/serial/uftdi_reg.h Sun Aug  5 11:29:44 2012        
(r239054)
+++ head/sys/dev/usb/serial/uftdi_reg.h Sun Aug  5 11:50:56 2012        
(r239055)
@@ -39,6 +39,7 @@
 #define        UFTDI_TYPE_MASK         0x000000ff
 #define        UFTDI_TYPE_SIO          0x00000001
 #define        UFTDI_TYPE_8U232AM      0x00000002
+#define        UFTDI_TYPE_AUTO         (UFTDI_TYPE_SIO | UFTDI_TYPE_8U232AM)
 #define        UFTDI_FLAG_MASK         0x0000ff00
 #define        UFTDI_FLAG_JTAG         0x00000100
 

Modified: head/sys/dev/usb/usbdevs
==============================================================================
--- head/sys/dev/usb/usbdevs    Sun Aug  5 11:29:44 2012        (r239054)
+++ head/sys/dev/usb/usbdevs    Sun Aug  5 11:50:56 2012        (r239055)
@@ -322,6 +322,7 @@ vendor VIVITAR              0x0636  Vivitar
 vendor GUNZE           0x0637  Gunze Electronics USA
 vendor AVISION         0x0638  Avision
 vendor TEAC            0x0644  TEAC
+vendor ACTON           0x0647  Acton Research Corp.
 vendor SGI             0x065e  Silicon Graphics
 vendor SANWASUPPLY     0x0663  Sanwa Supply
 vendor MEGATEC         0x0665  Megatec
@@ -346,6 +347,7 @@ vendor AGFA         0x06bd  AGFA-Gevaert
 vendor ASIAMD          0x06be  Asia Microelectronic Development
 vendor BIZLINK         0x06c4  Bizlink International
 vendor KEYSPAN         0x06cd  Keyspan / InnoSys Inc.
+vendor CONTEC          0x06ce  Contec products
 vendor AASHIMA         0x06d6  Aashima Technology
 vendor LIEBERT         0x06da  Liebert
 vendor MULTITECH       0x06e0  MultiTech
@@ -488,7 +490,8 @@ vendor GREENHOUSE   0x0a6b  GREENHOUSE
 vendor MEDELI          0x0a67  Medeli
 vendor GEOCAST         0x0a79  Geocast Network Systems
 vendor EGO             0x0a92  EGO systems
-vendor IDQUANTIQUE     0x0aba  id Quantique
+vendor IDQUANTIQUE     0x0aba  ID Quantique
+vendor IDTECH          0x0acd  ID TECH
 vendor ZYDAS           0x0ace  Zydas Technology Corporation
 vendor NEODIO          0x0aec  Neodio
 vendor OPTION          0x0af0  Option N.V.
@@ -515,14 +518,20 @@ vendor ADDONICS2  0x0bf6  Addonics Technol
 vendor FSC             0x0bf8  Fujitsu Siemens Computers
 vendor AGATE           0x0c08  Agate Technologies
 vendor DMI             0x0c0b  DMI
+vendor ICOM            0x0c26  Icom Inc.
+vendor GNOTOMETRICS    0x0c33  GN Otometrics
 vendor CHICONY2                0x0c45  Chicony
 vendor REINERSCT       0x0c4b  Reiner-SCT
 vendor SEALEVEL                0x0c52  Sealevel System
+vendor JETI            0x0c6c  Jeti
 vendor LUWEN           0x0c76  Luwen
+vendor ELEKTOR         0x0c7d  ELEKTOR Electronics
 vendor KYOCERA2                0x0c88  Kyocera Wireless Corp.
 vendor ZCOM            0x0cde  Z-Com
 vendor ATHEROS2                0x0cf3  Atheros Communications
+vendor POSIFLEX                0x0d3a  POSIFLEX
 vendor TANGTOP         0x0d3d  Tangtop
+vendor KOBIL           0x0d46  KOBIL
 vendor SMC3            0x0d5c  Standard Microsystems
 vendor ADDON           0x0d7d  Add-on Technology
 vendor ACDC            0x0d7e  American Computer & Digital Components
@@ -531,6 +540,7 @@ vendor CONCEPTRONIC 0x0d8e  Conceptronic
 vendor SKANHEX         0x0d96  Skanhex Technology, Inc.
 vendor MSI             0x0db0  Micro Star International
 vendor ELCON           0x0db7  ELCON Systemtechnik
+vendor UNKNOWN4                0x0dcd  Unknown vendor
 vendor NETAC           0x0dd8  Netac
 vendor SITECOMEU       0x0df6  Sitecom Europe
 vendor MOBILEACTION    0x0df7  Mobile Action
@@ -554,6 +564,7 @@ vendor VTECH                0x0f88  VTech
 vendor FALCOM          0x0f94  Falcom Wireless Communications GmbH
 vendor RIM             0x0fca  Research In Motion
 vendor DYNASTREAM      0x0fcf  Dynastream Innovations
+vendor LARSENBRUSGAARD 0x0fd8  Larsen and Brusgaard
 vendor KONTRON         0x0fe6  Kontron AG
 vendor QUALCOMM                0x1004  Qualcomm
 vendor APACER          0x1005  Apacer
@@ -561,6 +572,7 @@ vendor MOTOROLA4    0x100d  Motorola
 vendor AIRPLUS         0x1011  Airplus
 vendor DESKNOTE                0x1019  Desknote
 vendor NEC3            0x1033  NEC
+vendor TTI             0x103e  Thurlby Thandar Instruments
 vendor GIGABYTE                0x1044  GIGABYTE
 vendor WESTERN         0x1058  Western Digital
 vendor MOTOROLA                0x1063  Motorola
@@ -589,12 +601,14 @@ vendor TOPFIELD           0x11db  Topfield Co., Lt
 vendor SIEMENS3                0x11f5  Siemens
 vendor NETINDEX                0x11f6  NetIndex
 vendor ALCATEL         0x11f7  Alcatel
+vendor INTERBIOMETRICS 0x1209  Interbiometrics
 vendor UNKNOWN3                0x1233  Unknown vendor
 vendor TSUNAMI         0x1241  Tsunami
 vendor PHEENET         0x124a  Pheenet
 vendor TARGUS          0x1267  Targus
 vendor TWINMOS         0x126f  TwinMOS
 vendor TENDA           0x1286  Tenda
+vendor TESTO           0x128d  Testo products
 vendor CREATIVE2       0x1292  Creative Labs
 vendor BELKIN2         0x1293  Belkin Components
 vendor CYBERTAN                0x129b  CyberTAN Technology
@@ -616,6 +630,7 @@ vendor MERLIN               0x1416  Merlin
 vendor REDOCTANE       0x1430  RedOctane
 vendor WISTRONNEWEB    0x1435  Wistron NeWeb
 vendor RADIOSHACK      0x1453  Radio Shack
+vendor FIC             0x1457  FIC / OpenMoko
 vendor HUAWEI3COM      0x1472  Huawei-3Com
 vendor ABOCOM2         0x1482  AboCom Systems
 vendor SILICOM         0x1485  Silicom
@@ -634,6 +649,7 @@ vendor OQO          0x1557  OQO
 vendor UMEDIA          0x157e  U-MEDIA Communications
 vendor FIBERLINE       0x1582  Fiberline
 vendor SPARKLAN                0x15a9  SparkLAN
+vendor OLIMEX          0x15ba  Olimex
 vendor SOUNDGRAPH      0x15c2  Soundgraph, Inc.
 vendor AMIT2           0x15c5  AMIT
 vendor TEXTECH         0x15ca  Textech International Ltd.
@@ -668,14 +684,18 @@ vendor QCOM               0x18e8  Qcom
 vendor ELV             0x18ef  ELV
 vendor LINKSYS3                0x1915  Linksys
 vendor QUALCOMMINC     0x19d2  Qualcomm, Incorporated
+vendor BAYER           0x1a79  Bayer
 vendor WCH2            0x1a86  QinHeng Electronics
 vendor STELERA         0x1a8d  Stelera Wireless
 vendor MATRIXORBITAL   0x1b3d  Matrix Orbital
 vendor OVISLINK                0x1b75  OvisLink
+vendor TML             0x1b91  The Mobility Lab
 vendor TCTMOBILE       0x1bbb  TCT Mobile
+vendor ALTI2           0x1bc9  Alti-2 products
 vendor SUNPLUS         0x1bcf  Sunplus Innovation Technology Inc.
 vendor WAGO            0x1be3  WAGO Kontakttechnik GmbH.
 vendor TELIT           0x1bc7  Telit
+vendor IONICS          0x1c0c  Ionics PlugComputer
 vendor LONGCHEER       0x1c9e  Longcheer Holdings, Ltd.
 vendor MPMAN           0x1cae  MpMan
 vendor DRESDENELEKTRONIK 0x1cf1 dresden elektronik
@@ -692,8 +712,10 @@ vendor PLANEX2             0x2019  Planex Communicat
 vendor HAUPPAUGE2      0x2040  Hauppauge Computer Works
 vendor TLAYTECH                0x20b9  Tlay Tech
 vendor ENCORE          0x203d  Encore
+vendor QIHARDWARE      0x20b7  QI-hardware
 vendor PARA            0x20b8  PARA Industrial
 vendor SIMTEC          0x20df  Simtec Electronics
+vendor RTSYSTEMS       0x2100  RTSYSTEMS
 vendor VIALABS         0x2109  VIA Labs
 vendor ERICSSON                0x2282  Ericsson
 vendor MOTOROLA2       0x22b8  Motorola
@@ -714,6 +736,7 @@ vendor IRIVER               0x4102  iRiver
 vendor DELL            0x413c  Dell
 vendor WCH             0x4348  QinHeng Electronics
 vendor ACEECA          0x4766  Aceeca
+vendor PAPOUCH         0x5050  Papouch products
 vendor AVERATEC                0x50c2  Averatec
 vendor SWEEX           0x5173  Sweex
 vendor PROLIFIC2       0x5372  Prolific Technologies
@@ -730,6 +753,7 @@ vendor SITECOM2             0x9016  Sitecom
 vendor MOSCHIP         0x9710  MosChip Semiconductor
 vendor MARVELL         0x9e88  Marvell Technology Group Ltd.
 vendor 3COM3           0xa727  3Com
+vendor EVOLUTION       0xdeee  Evolution Robotics products
 vendor DATAAPEX                0xdaae  DataApex
 vendor HP2             0xf003  Hewlett Packard
 vendor LOGILINK                0xfc08  LogiLink
@@ -786,6 +810,9 @@ product ABOCOM RT2573_3             0xb21d  RT2573
 product ABOCOM RT2573_4                0xb21e  RT2573
 product ABOCOM WUG2700         0xb21f  WUG2700
 
+/* Acton Research Corp. */
+product ACTON SPECTRAPRO       0x0100  FTDI compatible adapter
+
 /* Accton products */
 product ACCTON USB320_EC       0x1046  USB320-EC Ethernet Adapter
 product ACCTON 2664W           0x3501  2664W
@@ -949,6 +976,9 @@ product ALINK 3GU           0x9200  3G modem
 product ALTEC ADA70            0x0070  ADA70 Speakers
 product ALTEC ASC495           0xff05  ASC495 Speakers
 
+/* Alti-2 products */
+product ALTI2 N3               0x6001  FTDI compatible adapter
+
 /* Allied Telesyn International products */
 product ALLIEDTELESYN ATUSB100 0xb100  AT-USB100
 
@@ -995,6 +1025,10 @@ product AMIT RT2870_1             0x0012  RT2870
 /* AMIT(2) products */
 product AMIT2 RT2870           0x0008  RT2870
 
+/* Analog Devices products */
+product ANALOGDEVICES GNICE    0xf000  FTDI compatible adapter
+product ANALOGDEVICES GNICEPLUS        0xf001  FTDI compatible adapter
+
 /* Anchor products */
 product ANCHOR SERIAL          0x2008  Serial
 product ANCHOR EZUSB           0x2131  EZUSB
@@ -1129,8 +1163,27 @@ product  AZUREWAVE RT3070_3      0x3305  RT3070
 /* Baltech products */
 product BALTECH CARDREADER     0x9999  Card reader
 
+/* Bayer products */
+product BAYER CONTOUR_CABLE    0x6001  FTDI compatible adapter
+
 /* B&B Electronics products */
 product BBELECTRONICS USOTL4   0xAC01  RS-422/485
+product BBELECTRONICS 232USB9M         0xac27  FTDI compatible adapter
+product BBELECTRONICS 485USB9F_2W      0xac25  FTDI compatible adapter
+product BBELECTRONICS 485USB9F_4W      0xac26  FTDI compatible adapter
+product BBELECTRONICS 485USBTB_2W      0xac33  FTDI compatible adapter
+product BBELECTRONICS 485USBTB_4W      0xac34  FTDI compatible adapter
+product BBELECTRONICS TTL3USB9M                0xac50  FTDI compatible adapter
+product BBELECTRONICS TTL5USB9M                0xac49  FTDI compatible adapter
+product BBELECTRONICS USO9ML2          0xac03  FTDI compatible adapter
+product BBELECTRONICS USO9ML2DR                0xac17  FTDI compatible adapter
+product BBELECTRONICS USO9ML2DR_2      0xac16  FTDI compatible adapter
+product BBELECTRONICS USOPTL4          0xac11  FTDI compatible adapter
+product BBELECTRONICS USOPTL4DR                0xac19  FTDI compatible adapter
+product BBELECTRONICS USOPTL4DR2       0xac18  FTDI compatible adapter
+product BBELECTRONICS USPTL4           0xac12  FTDI compatible adapter
+product BBELECTRONICS USTL4            0xac02  FTDI compatible adapter
+product BBELECTRONICS ZZ_PROG1_USB     0xba02  FTDI compatible adapter
 
 /* Belkin products */
 /*product BELKIN F5U111                0x????  F5U111 Ethernet*/
@@ -1297,6 +1350,9 @@ product CONCEPTRONIC2 RT2870_6    0x3c28  RT
 /* Connectix products */
 product CONNECTIX QUICKCAM     0x0001  QuickCam
 
+/* Conect products */
+product CONTEC COM1USBH                0x8311  FTDI compatible adapter
+
 /* Corega products */
 product COREGA ETHER_USB_T     0x0001  Ether USB-T
 product COREGA FETHER_USB_TX   0x0004  FEther USB-TX
@@ -1513,6 +1569,9 @@ product ELECOM UCSGT              0x5003  UC-SGT
 product ELECOM UCSGT0          0x5004  UC-SGT
 product ELECOM LDUSBTX3                0xabc1  LD-USB/TX
 
+/* Elektor products */
+product ELEKTOR FT323R         0x0005  FTDI compatible adapter
+
 /* Elsa products */
 product ELSA MODEM1            0x2265  ELSA Modem Board
 product ELSA USB2ETHERNET      0x3000  Microlink USB2Ethernet
@@ -1590,11 +1649,17 @@ product EPSON SX400             0x084a  SX400/NX400/
 /* e-TEK Labs products */
 product ETEK 1COM              0x8007  Serial
 
+/* Evolution products */
+product EVOLUTION ER1          0x0300  FTDI compatible adapter
+product EVOLUTION HYBRID       0x0302  FTDI compatible adapter
+product EVOLUTION RCM4         0x0303  FTDI compatible adapter
+
 /* Extended Systems products */
 product EXTENDED XTNDACCESS    0x0100  XTNDAccess IrDA
 
 /* Falcom products */
 product FALCOM TWIST           0x0001  USB GSM/GPRS Modem
+product FALCOM SAMBA           0x0005  FTDI compatible adapter
 
 /* FEIYA products */
 product FEIYA DUMMY            0x0000  Dummy product
@@ -1608,6 +1673,9 @@ product FESTO CMSP                0x0501  CMSP
 /* Fiberline */
 product FIBERLINE WL430U       0x6003  WL-430U
 
+/* FIC / OpenMoko */
+product FIC NEO1973_DEBUG      0x5118  FTDI compatible adapter
+
 /* Fossil, Inc products */
 product FOSSIL WRISTPDA                0x0002  Wrist PDA
 
@@ -1627,6 +1695,7 @@ product FTDI SERIAL_8U100AX       0x8372  8U100
 product FTDI SERIAL_8U232AM    0x6001  8U232AM Serial
 product FTDI SERIAL_8U232AM4   0x6004  8U232AM Serial
 product FTDI SERIAL_2232C      0x6010  FT2232C Dual port Serial
+product FTDI 232H              0x6014  FTDI compatible adapter
 product FTDI SERIAL_2232D      0x9e90  FT2232D Dual port Serial
 product FTDI SERIAL_4232H      0x6011  FT4232H Quad port Serial
 product FTDI BEAGLEBONE                0xa6d0  BeagleBone
@@ -1658,6 +1727,204 @@ product FTDI SEMC_DSS20         0xfc82  SEMC DSS
 /* Commerzielle und Technische Informationssysteme GmbH products */
 product FTDI CTI_USB_NANO_485  0xf60b  CTI USB-Nano 485
 product FTDI CTI_USB_MINI_485  0xf608  CTI USB-Mini 485
+/* Other products */
+product FTDI 232RL             0xfbfa  FTDI compatible adapter
+product FTDI 4N_GALAXY_DE_1    0xf3c0  FTDI compatible adapter
+product FTDI 4N_GALAXY_DE_2    0xf3c1  FTDI compatible adapter
+product FTDI 4N_GALAXY_DE_3    0xf3c2  FTDI compatible adapter
+product FTDI 8U232AM_ALT       0x6006  FTDI compatible adapter
+product FTDI ACCESSO           0xfad0  FTDI compatible adapter
+product FTDI ACG_HFDUAL                0xdd20  FTDI compatible adapter
+product FTDI ACTIVE_ROBOTS     0xe548  FTDI compatible adapter
+product FTDI ACTZWAVE          0xf2d0  FTDI compatible adapter
+product FTDI AMC232            0xff00  FTDI compatible adapter
+product FTDI ARTEMIS           0xdf28  FTDI compatible adapter
+product FTDI ASK_RDR400                0xc991  FTDI compatible adapter
+product FTDI ATIK_ATK16                0xdf30  FTDI compatible adapter
+product FTDI ATIK_ATK16C       0xdf32  FTDI compatible adapter
+product FTDI ATIK_ATK16HR      0xdf31  FTDI compatible adapter
+product FTDI ATIK_ATK16HRC     0xdf33  FTDI compatible adapter
+product FTDI ATIK_ATK16IC      0xdf35  FTDI compatible adapter
+product FTDI BCS_SE923         0xfb99  FTDI compatible adapter
+product FTDI CANDAPTER         0x9f80  FTDI compatible adapter
+product FTDI CANUSB            0xffa8  FTDI compatible adapter
+product FTDI CCSICDU20_0       0xf9d0  FTDI compatible adapter
+product FTDI CCSICDU40_1       0xf9d1  FTDI compatible adapter
+product FTDI CCSICDU64_4       0xf9d4  FTDI compatible adapter
+product FTDI CCSLOAD_N_GO_3    0xf9d3  FTDI compatible adapter
+product FTDI CCSMACHX_2                0xf9d2  FTDI compatible adapter
+product FTDI CCSPRIME8_5       0xf9d5  FTDI compatible adapter
+product FTDI CHAMSYS_24_MASTER_WING    0xdaf8  FTDI compatible adapter
+product FTDI CHAMSYS_MAXI_WING 0xdafd  FTDI compatible adapter
+product FTDI CHAMSYS_MEDIA_WING        0xdafe  FTDI compatible adapter
+product FTDI CHAMSYS_MIDI_TIMECODE     0xdafb  FTDI compatible adapter
+product FTDI CHAMSYS_MINI_WING 0xdafc  FTDI compatible adapter
+product FTDI CHAMSYS_PC_WING   0xdaf9  FTDI compatible adapter
+product FTDI CHAMSYS_USB_DMX   0xdafa  FTDI compatible adapter
+product FTDI CHAMSYS_WING      0xdaff  FTDI compatible adapter
+product FTDI COM4SM            0xd578  FTDI compatible adapter
+product FTDI CONVERTER_0       0xd388  FTDI compatible adapter
+product FTDI CONVERTER_1       0xd389  FTDI compatible adapter
+product FTDI CONVERTER_2       0xd38a  FTDI compatible adapter
+product FTDI CONVERTER_3       0xd38b  FTDI compatible adapter
+product FTDI CONVERTER_4       0xd38c  FTDI compatible adapter
+product FTDI CONVERTER_5       0xd38d  FTDI compatible adapter
+product FTDI CONVERTER_6       0xd38e  FTDI compatible adapter
+product FTDI CONVERTER_7       0xd38f  FTDI compatible adapter
+product FTDI DMX4ALL           0xc850  FTDI compatible adapter
+product FTDI DOMINTELL_DGQG    0xef50  FTDI compatible adapter
+product FTDI DOMINTELL_DUSB    0xef51  FTDI compatible adapter
+product FTDI DOTEC             0x9868  FTDI compatible adapter
+product FTDI ECLO_COM_1WIRE    0xea90  FTDI compatible adapter
+product FTDI ECO_PRO_CDS       0xe520  FTDI compatible adapter
+product FTDI ELSTER_UNICOM     0xe700  FTDI compatible adapter
+product FTDI ELV_ALC8500       0xf06e  FTDI compatible adapter
+product FTDI ELV_CLI7000       0xfb59  FTDI compatible adapter
+product FTDI ELV_CSI8          0xe0f0  FTDI compatible adapter
+product FTDI ELV_EC3000                0xe006  FTDI compatible adapter
+product FTDI ELV_EM1000DL      0xe0f1  FTDI compatible adapter
+product FTDI ELV_EM1010PC      0xe0ef  FTDI compatible adapter
+product FTDI ELV_FEM           0xe00a  FTDI compatible adapter
+product FTDI ELV_FHZ1000PC     0xf06f  FTDI compatible adapter
+product FTDI ELV_FHZ1300PC     0xe0e8  FTDI compatible adapter
+product FTDI ELV_FM3RX         0xe0ed  FTDI compatible adapter

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to