Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Sep 2012 17:03:32 +0000 (UTC)
From:      Hans Petter Selasky <hselasky@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org
Subject:   svn commit: r240664 - in stable/9/sys/dev/usb: . quirk serial
Message-ID:  <201209181703.q8IH3WhV029251@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: hselasky
Date: Tue Sep 18 17:03:32 2012
New Revision: 240664
URL: http://svn.freebsd.org/changeset/base/240664

Log:
  MFC r237079, r238078, r238779, r238803, r238804, r239055,
      r239298, r239358 and r239567:
  
  Add new USB ID's and some quirks.

Modified:
  stable/9/sys/dev/usb/quirk/usb_quirk.c
  stable/9/sys/dev/usb/serial/uftdi.c
  stable/9/sys/dev/usb/serial/uftdi_reg.h
  stable/9/sys/dev/usb/usbdevs
Directory Properties:
  stable/9/sys/   (props changed)
  stable/9/sys/dev/   (props changed)

Modified: stable/9/sys/dev/usb/quirk/usb_quirk.c
==============================================================================
--- stable/9/sys/dev/usb/quirk/usb_quirk.c	Tue Sep 18 16:49:57 2012	(r240663)
+++ stable/9/sys/dev/usb/quirk/usb_quirk.c	Tue Sep 18 17:03:32 2012	(r240664)
@@ -125,6 +125,8 @@ static struct usb_quirk_entry usb_quirks
 	/* MS keyboards do weird things */
 	USB_QUIRK(MICROSOFT, NATURAL4000, 0x0000, 0xFFFF, UQ_KBD_BOOTPROTO),
 	USB_QUIRK(MICROSOFT, WLINTELLIMOUSE, 0x0000, 0xffff, UQ_MS_LEADING_BYTE),
+	/* Quirk for Corsair Vengeance K60 keyboard */
+	USB_QUIRK(CORSAIR, K60, 0x0000, 0xffff, UQ_KBD_BOOTPROTO),
 	/* umodem(4) device quirks */
 	USB_QUIRK(METRICOM, RICOCHET_GS, 0x100, 0x100, UQ_ASSUME_CM_OVER_DATA),
 	USB_QUIRK(SANYO, SCP4900, 0x000, 0x000, UQ_ASSUME_CM_OVER_DATA),
@@ -438,6 +440,9 @@ static struct usb_quirk_entry usb_quirks
 	USB_QUIRK(MEIZU, M6_SL, 0x0000, 0xffff, UQ_MSC_FORCE_WIRE_BBB,
 	    UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY, UQ_MSC_NO_SYNC_CACHE),
 
+	USB_QUIRK(TOSHIBA, TRANSMEMORY, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE),
+	USB_QUIRK(VIALABS, USB30SATABRIDGE, 0x0000, 0xffff, UQ_MSC_NO_SYNC_CACHE),
+
 	/* Non-standard USB MIDI devices */
 	USB_QUIRK(ROLAND, UM1, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS),
 	USB_QUIRK(ROLAND, SC8850, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS),
@@ -455,7 +460,13 @@ static struct usb_quirk_entry usb_quirks
 	USB_QUIRK(ROLAND, SD20, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS),
 	USB_QUIRK(ROLAND, SD80, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS),
 	USB_QUIRK(ROLAND, UA700, 0x0000, 0xffff, UQ_AU_VENDOR_CLASS),
+	USB_QUIRK(EGO, M4U, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI),
+	USB_QUIRK(LOGILINK, U2M, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI),
 	USB_QUIRK(MEDELI, DD305, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI, UQ_MATCH_VENDOR_ONLY),
+	USB_QUIRK(REDOCTANE, GHMIDI, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI),
+	USB_QUIRK(TEXTECH, U2M_1, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI),
+	USB_QUIRK(TEXTECH, U2M_2, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI),
+	USB_QUIRK(WCH2, U2M, 0x0000, 0xffff, UQ_SINGLE_CMD_MIDI),
 
 	/*
 	 * Quirks for manufacturers which USB devices does not respond

Modified: stable/9/sys/dev/usb/serial/uftdi.c
==============================================================================
--- stable/9/sys/dev/usb/serial/uftdi.c	Tue Sep 18 16:49:57 2012	(r240663)
+++ stable/9/sys/dev/usb/serial/uftdi.c	Tue Sep 18 17:03:32 2012	(r240664)
@@ -209,53 +209,635 @@ 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),
+	UFTDI_DEV(FTDI, SERIAL_232RL, UFTDI_TYPE_AUTO),
 	UFTDI_DEV(FTDI, SERIAL_4232H, UFTDI_TYPE_8U232AM),
 	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
 };
 
@@ -312,6 +894,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: stable/9/sys/dev/usb/serial/uftdi_reg.h
==============================================================================
--- stable/9/sys/dev/usb/serial/uftdi_reg.h	Tue Sep 18 16:49:57 2012	(r240663)
+++ stable/9/sys/dev/usb/serial/uftdi_reg.h	Tue Sep 18 17:03:32 2012	(r240664)
@@ -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: stable/9/sys/dev/usb/usbdevs
==============================================================================
--- stable/9/sys/dev/usb/usbdevs	Tue Sep 18 16:49:57 2012	(r240663)
+++ stable/9/sys/dev/usb/usbdevs	Tue Sep 18 17:03:32 2012	(r240664)
@@ -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
@@ -487,7 +489,9 @@ vendor BROADCOM		0x0a5c	Broadcom
 vendor GREENHOUSE	0x0a6b	GREENHOUSE
 vendor MEDELI		0x0a67	Medeli
 vendor GEOCAST		0x0a79	Geocast Network Systems
-vendor IDQUANTIQUE	0x0aba	id Quantique
+vendor EGO		0x0a92	EGO systems
+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.
@@ -514,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
@@ -530,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
@@ -553,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
@@ -560,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
@@ -588,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
@@ -612,8 +627,10 @@ vendor INITIO		0x13fd	Initio Corporation
 vendor EMTEC		0x13fe	Emtec
 vendor NOVATEL		0x1410	Novatel Wireless
 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
@@ -632,8 +649,10 @@ 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.
 vendor SOHOWARE		0x15e8	SOHOware
 vendor UMAX		0x1606	UMAX Data Systems
 vendor INSIDEOUT	0x1608	Inside Out Networks
@@ -665,13 +684,19 @@ 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 CORSAIR		0x1b1c	Corsair
 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
@@ -688,8 +713,11 @@ 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
 vendor TRIPPLITE	0x2478	Tripp-Lite
@@ -709,6 +737,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
@@ -725,8 +754,10 @@ 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
 vendor USRP		0xfffe	GNU Radio USRP
 
 /*
@@ -780,6 +811,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
@@ -943,6 +977,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
 
@@ -989,6 +1026,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
@@ -1124,8 +1165,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*/
@@ -1292,6 +1352,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
@@ -1312,6 +1375,9 @@ product COREGA CGWLUSB300GNM	0x0042	CG-W
 product COREGA WLUSB_11_STICK	0x7613	WLAN USB Stick 11
 product COREGA FETHER_USB_TXC	0x9601	FEther USB-TXC
 
+/* Corsair products */
+product CORSAIR K60		0x0a60	Corsair Vengeance K60 keyboard
+
 /* Creative products */
 product CREATIVE NOMAD_II	0x1002	Nomad II MP3 player
 product CREATIVE NOMAD_IIMG	0x4004	Nomad II MG
@@ -1483,6 +1549,10 @@ product EGALAX TPANEL		0x0001	Touch Pane
 product EGALAX TPANEL2		0x0002	Touch Panel
 product EGALAX2 TPANEL		0x0001	Touch Panel
 
+/* EGO Products */
+product EGO DUMMY		0x0000	Dummy Product
+product EGO M4U			0x1020	ESI M4U
+
 /* Eicon Networks */
 product EICON DIVA852		0x4905	Diva 852 ISDN TA
 
@@ -1504,6 +1574,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
@@ -1581,11 +1654,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
@@ -1599,6 +1678,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
 
@@ -1617,7 +1699,9 @@ product FSC E5400		0x1009	PrismGT USB 2.
 product FTDI SERIAL_8U100AX	0x8372	8U100AX Serial
 product FTDI SERIAL_8U232AM	0x6001	8U232AM Serial
 product FTDI SERIAL_8U232AM4	0x6004	8U232AM Serial

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201209181703.q8IH3WhV029251>