summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/usb')
-rw-r--r--sys/dev/usb/controller/at91dci_atmelarm.c4
-rw-r--r--sys/dev/usb/controller/ohci_atmelarm.c1
-rw-r--r--sys/dev/usb/controller/xhci_pci.c11
-rw-r--r--sys/dev/usb/controller/xhcireg.h3
-rw-r--r--sys/dev/usb/net/if_udav.c18
-rw-r--r--sys/dev/usb/net/if_udavreg.h1
-rw-r--r--sys/dev/usb/quirk/usb_quirk.c1
-rw-r--r--sys/dev/usb/serial/u3g.c5
-rw-r--r--sys/dev/usb/serial/uplcom.c1
-rw-r--r--sys/dev/usb/serial/uslcom.c47
-rw-r--r--sys/dev/usb/usbdevs65
11 files changed, 130 insertions, 27 deletions
diff --git a/sys/dev/usb/controller/at91dci_atmelarm.c b/sys/dev/usb/controller/at91dci_atmelarm.c
index da9ba36..468644c 100644
--- a/sys/dev/usb/controller/at91dci_atmelarm.c
+++ b/sys/dev/usb/controller/at91dci_atmelarm.c
@@ -61,12 +61,12 @@ __FBSDID("$FreeBSD$");
#include <arm/at91/at91_pmcvar.h>
#include <arm/at91/at91rm92reg.h>
-#include <arm/at91/at91_pio_rm9200.h>
+#include <arm/at91/at91_pioreg.h>
#include <arm/at91/at91_piovar.h>
#define MEM_RID 0
-/* Pin Definitions - do they belong here or somewhere else ? */
+/* Pin Definitions - do they belong here or somewhere else ? -- YES! */
#define VBUS_MASK AT91C_PIO_PB24
#define VBUS_BASE AT91RM92_PIOB_BASE
diff --git a/sys/dev/usb/controller/ohci_atmelarm.c b/sys/dev/usb/controller/ohci_atmelarm.c
index 643b4d1..4b271c3 100644
--- a/sys/dev/usb/controller/ohci_atmelarm.c
+++ b/sys/dev/usb/controller/ohci_atmelarm.c
@@ -76,6 +76,7 @@ struct at91_ohci_softc {
static int
ohci_atmelarm_probe(device_t dev)
{
+
device_set_desc(dev, "AT91 integrated OHCI controller");
return (BUS_PROBE_DEFAULT);
}
diff --git a/sys/dev/usb/controller/xhci_pci.c b/sys/dev/usb/controller/xhci_pci.c
index c9e067e..db74b1c 100644
--- a/sys/dev/usb/controller/xhci_pci.c
+++ b/sys/dev/usb/controller/xhci_pci.c
@@ -101,6 +101,8 @@ xhci_pci_match(device_t self)
case 0x1e318086:
return ("Intel Panther Point USB 3.0 controller");
+ case 0x8c318086:
+ return ("Intel Lynx Point USB 3.0 controller");
default:
break;
@@ -245,6 +247,7 @@ static int
xhci_pci_take_controller(device_t self)
{
struct xhci_softc *sc = device_get_softc(self);
+ uint32_t device_id = pci_get_devid(self);
uint32_t cparams;
uint32_t eecp;
uint32_t eec;
@@ -285,5 +288,13 @@ xhci_pci_take_controller(device_t self)
usb_pause_mtx(NULL, hz / 100); /* wait 10ms */
}
}
+
+ /* On Intel chipsets reroute ports from EHCI to XHCI controller. */
+ if (device_id == 0x1e318086 /* Panther Point */ ||
+ device_id == 0x8c318086 /* Lynx Point */) {
+ pci_write_config(self, PCI_XHCI_INTEL_USB3_PSSEN, 0xffffffff, 4);
+ pci_write_config(self, PCI_XHCI_INTEL_XUSB2PR, 0xffffffff, 4);
+ }
+
return (0);
}
diff --git a/sys/dev/usb/controller/xhcireg.h b/sys/dev/usb/controller/xhcireg.h
index b14dabc..a130f65 100644
--- a/sys/dev/usb/controller/xhcireg.h
+++ b/sys/dev/usb/controller/xhcireg.h
@@ -34,6 +34,9 @@
#define PCI_USB_REV_3_0 0x30 /* USB 3.0 */
#define PCI_XHCI_FLADJ 0x61 /* RW frame length adjust */
+#define PCI_XHCI_INTEL_XUSB2PR 0xD0 /* Intel USB2 Port Routing */
+#define PCI_XHCI_INTEL_USB3_PSSEN 0xD8 /* Intel USB3 Port SuperSpeed Enable */
+
/* XHCI capability registers */
#define XHCI_CAPLENGTH 0x00 /* RO capability */
#define XHCI_RESERVED 0x01 /* Reserved */
diff --git a/sys/dev/usb/net/if_udav.c b/sys/dev/usb/net/if_udav.c
index 2507846..c6f0811 100644
--- a/sys/dev/usb/net/if_udav.c
+++ b/sys/dev/usb/net/if_udav.c
@@ -169,7 +169,7 @@ MODULE_DEPEND(udav, ether, 1, 1, 1);
MODULE_DEPEND(udav, miibus, 1, 1, 1);
MODULE_VERSION(udav, 1);
-static const struct usb_ether_methods udav_ue_methods = {
+static struct usb_ether_methods udav_ue_methods = {
.ue_attach_post = udav_attach_post,
.ue_start = udav_start,
.ue_init = udav_init,
@@ -206,7 +206,8 @@ static const STRUCT_USB_HOST_ID udav_devs[] = {
{USB_VPI(USB_VENDOR_SHANTOU, USB_PRODUCT_SHANTOU_ADM8515, 0)},
/* Kontron AG USB Ethernet */
{USB_VPI(USB_VENDOR_KONTRON, USB_PRODUCT_KONTRON_DM9601, 0)},
- {USB_VPI(USB_VENDOR_KONTRON, USB_PRODUCT_KONTRON_JP1082, 0)},
+ {USB_VPI(USB_VENDOR_KONTRON, USB_PRODUCT_KONTRON_JP1082,
+ UDAV_FLAG_NO_PHY)},
};
static void
@@ -259,6 +260,16 @@ udav_attach(device_t dev)
goto detach;
}
+ /*
+ * The JP1082 has an unusable PHY and provides no link information.
+ */
+ if (sc->sc_flags & UDAV_FLAG_NO_PHY) {
+ udav_ue_methods.ue_tick = NULL;
+ udav_ue_methods.ue_mii_upd = NULL;
+ udav_ue_methods.ue_mii_sts = NULL;
+ sc->sc_flags |= UDAV_FLAG_LINK;
+ }
+
ue->ue_sc = sc;
ue->ue_dev = dev;
ue->ue_udev = uaa->device;
@@ -712,7 +723,8 @@ udav_stop(struct usb_ether *ue)
UDAV_LOCK_ASSERT(sc, MA_OWNED);
ifp->if_drv_flags &= ~IFF_DRV_RUNNING;
- sc->sc_flags &= ~UDAV_FLAG_LINK;
+ if (!(sc->sc_flags & UDAV_FLAG_NO_PHY))
+ sc->sc_flags &= ~UDAV_FLAG_LINK;
/*
* stop all the transfers, if not already stopped:
diff --git a/sys/dev/usb/net/if_udavreg.h b/sys/dev/usb/net/if_udavreg.h
index 82715e8..7c35829 100644
--- a/sys/dev/usb/net/if_udavreg.h
+++ b/sys/dev/usb/net/if_udavreg.h
@@ -159,6 +159,7 @@ struct udav_softc {
int sc_flags;
#define UDAV_FLAG_LINK 0x0001
#define UDAV_FLAG_EXT_PHY 0x0040
+#define UDAV_FLAG_NO_PHY 0x0080
};
#define UDAV_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx)
diff --git a/sys/dev/usb/quirk/usb_quirk.c b/sys/dev/usb/quirk/usb_quirk.c
index 41f5002..b269f60 100644
--- a/sys/dev/usb/quirk/usb_quirk.c
+++ b/sys/dev/usb/quirk/usb_quirk.c
@@ -123,6 +123,7 @@ static struct usb_quirk_entry usb_quirks[USB_DEV_QUIRKS_MAX] = {
USB_QUIRK(METAGEEK2, WISPYDBX, 0x0000, 0xffff, UQ_KBD_IGNORE, UQ_HID_IGNORE),
USB_QUIRK(TENX, UAUDIO0, 0x0101, 0x0101, UQ_AUDIO_SWAP_LR),
/* MS keyboards do weird things */
+ USB_QUIRK(MICROSOFT, NATURAL4000, 0x0000, 0xFFFF, UQ_KBD_BOOTPROTO),
USB_QUIRK(MICROSOFT, WLINTELLIMOUSE, 0x0000, 0xffff, UQ_MS_LEADING_BYTE),
/* umodem(4) device quirks */
USB_QUIRK(METRICOM, RICOCHET_GS, 0x100, 0x100, UQ_ASSUME_CM_OVER_DATA),
diff --git a/sys/dev/usb/serial/u3g.c b/sys/dev/usb/serial/u3g.c
index cb39ba0..c524531 100644
--- a/sys/dev/usb/serial/u3g.c
+++ b/sys/dev/usb/serial/u3g.c
@@ -282,9 +282,12 @@ static const STRUCT_USB_HOST_ID u3g_devs[] = {
U3G_DEV(HUAWEI, E143F, U3GINIT_HUAWEI),
U3G_DEV(HUAWEI, E173, 0),
U3G_DEV(HUAWEI, E173_INIT, U3GINIT_HUAWEISCSI),
+ U3G_DEV(HUAWEI, E3131, 0),
+ U3G_DEV(HUAWEI, E3131_INIT, U3GINIT_HUAWEISCSI),
U3G_DEV(HUAWEI, E180V, U3GINIT_HUAWEI),
U3G_DEV(HUAWEI, E220, U3GINIT_HUAWEI),
U3G_DEV(HUAWEI, E220BIS, U3GINIT_HUAWEI),
+ U3G_DEV(HUAWEI, E392, U3GINIT_HUAWEISCSI),
U3G_DEV(HUAWEI, MOBILE, U3GINIT_HUAWEI),
U3G_DEV(HUAWEI, E1752, U3GINIT_HUAWEISCSI),
U3G_DEV(HUAWEI, E1820, U3GINIT_HUAWEISCSI),
@@ -357,6 +360,8 @@ static const STRUCT_USB_HOST_ID u3g_devs[] = {
U3G_DEV(QUALCOMM2, MF330, 0),
U3G_DEV(QUALCOMM2, SIM5218, 0),
U3G_DEV(QUALCOMM2, VW110L, U3GINIT_SCSIEJECT),
+ U3G_DEV(QUALCOMM2, GOBI2000_QDL, 0),
+ U3G_DEV(QUALCOMM2, GOBI2000, 0),
U3G_DEV(QUALCOMMINC, AC2726, 0),
U3G_DEV(QUALCOMMINC, AC8700, 0),
U3G_DEV(QUALCOMMINC, AC8710, 0),
diff --git a/sys/dev/usb/serial/uplcom.c b/sys/dev/usb/serial/uplcom.c
index 37a91ae..c08a18e 100644
--- a/sys/dev/usb/serial/uplcom.c
+++ b/sys/dev/usb/serial/uplcom.c
@@ -279,6 +279,7 @@ static const STRUCT_USB_HOST_ID uplcom_devs[] = {
UPLCOM_DEV(PROLIFIC, DCU11), /* DCU-11 Phone Cable */
UPLCOM_DEV(PROLIFIC, HCR331), /* HCR331 Card Reader */
UPLCOM_DEV(PROLIFIC, MICROMAX_610U), /* Micromax 610U modem */
+ UPLCOM_DEV(PROLIFIC, MOTOROLA), /* Motorola cable */
UPLCOM_DEV(PROLIFIC, PHAROS), /* Prolific Pharos */
UPLCOM_DEV(PROLIFIC, PL2303), /* Generic adapter */
UPLCOM_DEV(PROLIFIC, RSAQ2), /* I/O DATA USB-RSAQ2 */
diff --git a/sys/dev/usb/serial/uslcom.c b/sys/dev/usb/serial/uslcom.c
index 848f2d5..9a67b79 100644
--- a/sys/dev/usb/serial/uslcom.c
+++ b/sys/dev/usb/serial/uslcom.c
@@ -70,12 +70,13 @@ SYSCTL_INT(_hw_usb_uslcom, OID_AUTO, debug, CTLFLAG_RW,
/* Request codes */
#define USLCOM_UART 0x00
-#define USLCOM_BAUD_RATE 0x01
+#define USLCOM_SET_BAUD_DIV 0x01
#define USLCOM_DATA 0x03
#define USLCOM_BREAK 0x05
#define USLCOM_CTRL 0x07
#define USLCOM_RCTRL 0x08
#define USLCOM_SET_FLOWCTRL 0x13
+#define USLCOM_SET_BAUD_RATE 0x1e
#define USLCOM_VENDOR_SPECIFIC 0xff
/* USLCOM_UART values */
@@ -92,8 +93,8 @@ SYSCTL_INT(_hw_usb_uslcom, OID_AUTO, debug, CTLFLAG_RW,
#define USLCOM_CTRL_RI 0x0040
#define USLCOM_CTRL_DCD 0x0080
-/* USLCOM_BAUD_RATE values */
-#define USLCOM_BAUD_REF 0x384000
+/* USLCOM_SET_BAUD_DIV values */
+#define USLCOM_BAUD_REF 3686400 /* 3.6864 MHz */
/* USLCOM_DATA values */
#define USLCOM_STOP_BITS_1 0x00
@@ -213,7 +214,13 @@ static struct ucom_callback uslcom_callback = {
static const STRUCT_USB_HOST_ID uslcom_devs[] = {
#define USLCOM_DEV(v,p) { USB_VP(USB_VENDOR_##v, USB_PRODUCT_##v##_##p) }
USLCOM_DEV(BALTECH, CARDREADER),
+ USLCOM_DEV(CLIPSAL, 5000CT2),
+ USLCOM_DEV(CLIPSAL, 5500PACA),
USLCOM_DEV(CLIPSAL, 5500PCU),
+ USLCOM_DEV(CLIPSAL, 560884),
+ USLCOM_DEV(CLIPSAL, 5800PC),
+ USLCOM_DEV(CLIPSAL, C5000CT2),
+ USLCOM_DEV(CLIPSAL, L51xx),
USLCOM_DEV(DATAAPEX, MULTICOM),
USLCOM_DEV(DELL, DW700),
USLCOM_DEV(DIGIANSWER, ZIGBEE802154),
@@ -221,17 +228,27 @@ static const STRUCT_USB_HOST_ID uslcom_devs[] = {
USLCOM_DEV(DYNASTREAM, ANTDEVBOARD2),
USLCOM_DEV(DYNASTREAM, ANT2USB),
USLCOM_DEV(ELV, USBI2C),
+ USLCOM_DEV(FESTO, CMSP),
+ USLCOM_DEV(FESTO, CPX_USB),
USLCOM_DEV(FOXCONN, PIRELLI_DP_L10),
USLCOM_DEV(FOXCONN, TCOM_TC_300),
USLCOM_DEV(GEMALTO, PROXPU),
USLCOM_DEV(JABLOTRON, PC60B),
+ USLCOM_DEV(KAMSTRUP, OPTICALEYE),
+ USLCOM_DEV(KAMSTRUP, MBUS_250D),
+ USLCOM_DEV(LINKINSTRUMENTS, MSO19),
+ USLCOM_DEV(LINKINSTRUMENTS, MSO28),
+ USLCOM_DEV(LINKINSTRUMENTS, MSO28_2),
USLCOM_DEV(MEI, CASHFLOW_SC),
USLCOM_DEV(MEI, S2000),
- USLCOM_DEV(JABLOTRON, PC60B),
USLCOM_DEV(OWEN, AC4),
USLCOM_DEV(PHILIPS, ACE1001),
USLCOM_DEV(PLX, CA42),
USLCOM_DEV(RENESAS, RX610),
+ USLCOM_DEV(SILABS, AC_SERV_CAN),
+ USLCOM_DEV(SILABS, AC_SERV_CIS),
+ USLCOM_DEV(SILABS, AC_SERV_IBUS),
+ USLCOM_DEV(SILABS, AC_SERV_OBD),
USLCOM_DEV(SILABS, AEROCOMM),
USLCOM_DEV(SILABS, AMBER_AMB2560),
USLCOM_DEV(SILABS, ARGUSISP),
@@ -247,16 +264,21 @@ static const STRUCT_USB_HOST_ID uslcom_devs[] = {
USLCOM_DEV(SILABS, C2_EDGE_MODEM),
USLCOM_DEV(SILABS, CP2102),
USLCOM_DEV(SILABS, CP210X_2),
+ USLCOM_DEV(SILABS, CP210X_3),
+ USLCOM_DEV(SILABS, CP210X_4),
USLCOM_DEV(SILABS, CRUMB128),
USLCOM_DEV(SILABS, CYGNAL),
USLCOM_DEV(SILABS, CYGNAL_DEBUG),
USLCOM_DEV(SILABS, CYGNAL_GPS),
USLCOM_DEV(SILABS, DEGREE),
+ USLCOM_DEV(SILABS, DEKTEK_DTAPLUS),
USLCOM_DEV(SILABS, EMS_C1007),
+ USLCOM_DEV(SILABS, HAMLINKUSB),
USLCOM_DEV(SILABS, HELICOM),
USLCOM_DEV(SILABS, IMS_USB_RS422),
USLCOM_DEV(SILABS, INFINITY_MIC),
USLCOM_DEV(SILABS, INSYS_MODEM),
+ USLCOM_DEV(SILABS, IRZ_SG10),
USLCOM_DEV(SILABS, KYOCERA_GPS),
USLCOM_DEV(SILABS, LIPOWSKY_HARP),
USLCOM_DEV(SILABS, LIPOWSKY_JTAG),
@@ -264,12 +286,14 @@ static const STRUCT_USB_HOST_ID uslcom_devs[] = {
USLCOM_DEV(SILABS, MC35PU),
USLCOM_DEV(SILABS, MJS_TOSLINK),
USLCOM_DEV(SILABS, MSD_DASHHAWK),
+ USLCOM_DEV(SILABS, MULTIPLEX_RC),
+ USLCOM_DEV(SILABS, OPTRIS_MSPRO),
USLCOM_DEV(SILABS, POLOLU),
USLCOM_DEV(SILABS, PROCYON_AVS),
USLCOM_DEV(SILABS, SB_PARAMOUNT_ME),
USLCOM_DEV(SILABS, SUUNTO),
USLCOM_DEV(SILABS, TAMSMASTER),
- USLCOM_DEV(SILABS, TELEGESYS_ETRX2),
+ USLCOM_DEV(SILABS, TELEGESIS_ETRX2),
USLCOM_DEV(SILABS, TRACIENT),
USLCOM_DEV(SILABS, TRAQMATE),
USLCOM_DEV(SILABS, USBCOUNT50),
@@ -511,19 +535,20 @@ uslcom_param(struct ucom_softc *ucom, struct termios *t)
{
struct uslcom_softc *sc = ucom->sc_parent;
struct usb_device_request req;
- uint32_t flowctrl[4];
+ uint32_t baudrate, flowctrl[4];
uint16_t data;
DPRINTF("\n");
+ baudrate = t->c_ospeed;
req.bmRequestType = USLCOM_WRITE;
- req.bRequest = USLCOM_BAUD_RATE;
- USETW(req.wValue, USLCOM_BAUD_REF / t->c_ospeed);
+ req.bRequest = USLCOM_SET_BAUD_RATE;
+ USETW(req.wValue, 0);
USETW(req.wIndex, USLCOM_PORT_NO);
- USETW(req.wLength, 0);
+ USETW(req.wLength, sizeof(baudrate));
- if (ucom_cfg_do_request(sc->sc_udev, &sc->sc_ucom,
- &req, NULL, 0, 1000)) {
+ if (ucom_cfg_do_request(sc->sc_udev, &sc->sc_ucom,
+ &req, &baudrate, 0, 1000)) {
DPRINTF("Set baudrate failed (ignored)\n");
}
diff --git a/sys/dev/usb/usbdevs b/sys/dev/usb/usbdevs
index aedea58..56a47b9 100644
--- a/sys/dev/usb/usbdevs
+++ b/sys/dev/usb/usbdevs
@@ -659,6 +659,7 @@ vendor SENAO 0x1740 Senao
vendor ASUS2 0x1761 ASUS
vendor SWEEX2 0x177f Sweex
vendor METAGEEK 0x1781 MetaGeek
+vendor KAMSTRUP 0x17a8 Kamstrup A/S
vendor WAVESENSE 0x17f4 WaveSense
vendor VAISALA 0x1843 Vaisala
vendor AMIT 0x18c5 AMIT
@@ -672,6 +673,7 @@ vendor STELERA 0x1a8d Stelera Wireless
vendor MATRIXORBITAL 0x1b3d Matrix Orbital
vendor OVISLINK 0x1b75 OvisLink
vendor TCTMOBILE 0x1bbb TCT Mobile
+vendor SUNPLUS 0x1bcf Sunplus Innovation Technology Inc.
vendor WAGO 0x1be3 WAGO Kontakttechnik GmbH.
vendor TELIT 0x1bc7 Telit
vendor LONGCHEER 0x1c9e Longcheer Holdings, Ltd.
@@ -683,6 +685,7 @@ vendor QISDA 0x1da5 Qisda
vendor METAGEEK2 0x1dd5 MetaGeek
vendor ALINK 0x1e0e Alink
vendor AIRTIES 0x1eda AirTies
+vendor FESTO 0x1e29 Festo
vendor VERTEX 0x1fe7 Vertex Wireless Co., Ltd.
vendor DLINK 0x2001 D-Link
vendor PLANEX2 0x2019 Planex Communications
@@ -699,6 +702,7 @@ vendor HIROSE 0x2631 Hirose Electric
vendor NHJ 0x2770 NHJ
vendor PLANEX 0x2c02 Planex Communications
vendor VIDZMEDIA 0x3275 VidzMedia Pte Ltd
+vendor LINKINSTRUMENTS 0x3195 Link Instruments Inc.
vendor AEI 0x3334 AEI
vendor HANK 0x3353 Hank Connection
vendor PQI 0x3538 PQI
@@ -1245,7 +1249,13 @@ product CISCOLINKSYS2 RT3070 0x4001 RT3070
product CISCOLINKSYS3 RT3070 0x0101 RT3070
/* Clipsal products */
-product CLIPSAL 5500PCU 0x0303 5500PCU C-Bus
+product CLIPSAL 560884 0x0101 560884 C-Bus Audio Matrix Switch
+product CLIPSAL 5500PACA 0x0201 5500PACA C-Bus Pascal Automation Controller
+product CLIPSAL 5800PC 0x0301 5800PC C-Bus Wireless Interface
+product CLIPSAL 5500PCU 0x0303 5500PCU C-Bus Interface
+product CLIPSAL 5000CT2 0x0304 5000CT2 C-Bus Touch Screen
+product CLIPSAL C5000CT2 0x0305 C5000CT2 C-Bus Touch Screen
+product CLIPSAL L51xx 0x0401 L51xx C-Bus Dimmer
/* CMOTECH products */
product CMOTECH CNU510 0x5141 CDMA Technologies USB modem
@@ -1591,6 +1601,10 @@ product FEIYA DUMMY 0x0000 Dummy product
product FEIYA 5IN1 0x1132 5-in-1 Card Reader
product FEIYA AC110 0x6300 AC-110 Card Reader
+/* Festo */
+product FESTO CPX_USB 0x0102 CPX-USB
+product FESTO CMSP 0x0501 CMSP
+
/* Fiberline */
product FIBERLINE WL430U 0x6003 WL-430U
@@ -1658,7 +1672,7 @@ product FUJITSUSIEMENS SCR 0x0009 Fujitsu-Siemens SCR USB Reader
product GARMIN IQUE_3600 0x0004 iQue 3600
/* Gemalto products */
-product GEMALTO PROXPU 0x5501 Prox-PU/CU
+product GEMALTO PROXPU 0x5501 Prox-PU/CU RFID Card Reader
/* General Instruments (Motorola) products */
product GENERALINSTMNTS SB5100 0x5100 SURFboard SB5100 Cable modem
@@ -1894,6 +1908,9 @@ product HUAWEI E143F 0x143f 3G modem
product HUAWEI E1752 0x1446 3G modem
product HUAWEI K3765 0x1465 3G modem
product HUAWEI E1820 0x14ac E1820 HSPA+ USB Slider
+product HUAWEI E3131_INIT 0x14fe 3G modem initial
+product HUAWEI E392 0x1505 LTE modem
+product HUAWEI E3131 0x1506 3G modem
product HUAWEI K3765_INIT 0x1520 K3765 Initial
product HUAWEI ETS2055 0x1803 CDMA modem
product HUAWEI E173 0x1c05 3G modem
@@ -1988,6 +2005,10 @@ product JVC MP_PRX1 0x3008 MP-PRX1 Ethernet
/* JRC products */
product JRC AH_J3001V_J3002V 0x0001 AirH PHONE AH-J3001V/J3002V
+/* Kamstrrup products */
+product KAMSTRUP OPTICALEYE 0x0001 Optical Eye/3-wire
+product KAMSTRUP MBUS_250D 0x0005 M-Bus Master MultiPort 250D
+
/* Kawatsu products */
product KAWATSU MH4000P 0x0003 MiniHub 4000P
@@ -2083,6 +2104,11 @@ product LEXMARK S2450 0x0009 Optra S 2450
/* Liebert products */
product LIEBERT POWERSURE_PXT 0xffff PowerSure Personal XT
+/* Link Instruments Inc. products */
+product LINKINSTRUMENTS MSO19 0xf190 Link Instruments MSO-19
+product LINKINSTRUMENTS MSO28 0xf280 Link Instruments MSO-28
+product LINKINSTRUMENTS MSO28_2 0xf281 Link Instruments MSO-28
+
/* Linksys products */
product LINKSYS MAUSB2 0x0105 Camedia MAUSB-2
product LINKSYS USB10TX1 0x200c USB10TX
@@ -2225,7 +2251,7 @@ product MGE UPS2 0xffff MGE UPS SYSTEMS PROTECTIONCENTER 2
/* MEI products */
product MEI CASHFLOW_SC 0x1100 Cashflow-SC Cash Acceptor
-product MEI S2000 0x1101 Seies 2000 Combo Acceptor
+product MEI S2000 0x1101 Series 2000 Combo Acceptor
/* Micro Star International products */
product MSI BT_DONGLE 0x1967 Bluetooth USB dongle
@@ -2338,6 +2364,10 @@ product MOTOROLA2 USBLAN2 0x6027 USBLAN
product MOTOROLA4 RT2770 0x9031 RT2770
product MOTOROLA4 RT3070 0x9032 RT3070
+/* MpMan products */
+product MPMAN MPF400_2 0x25a8 MPF400 Music Player 2Go
+product MPMAN MPF400_1 0x36d0 MPF400 Music Player 1Go
+
/* MultiTech products */
product MULTITECH ATLAS 0xf101 MT5634ZBA-USB modem
@@ -2664,6 +2694,7 @@ product PRIMAX HP_RH304AA 0x4d17 HP RH304AA mouse
/* Prolific products */
product PROLIFIC PL2301 0x0000 PL2301 Host-Host interface
product PROLIFIC PL2302 0x0001 PL2302 Host-Host interface
+product PROLIFIC MOTOROLA 0x0307 Motorola Cable
product PROLIFIC RSAQ2 0x04bb PL2303 Serial (IODATA USB-RSAQ2)
product PROLIFIC ALLTRONIX_GPRS 0x0609 Alltronix ACM003U00 modem
product PROLIFIC ALDIGA_AL11U 0x0611 AlDiga AL-11U modem
@@ -2703,6 +2734,8 @@ product QUALCOMM2 CDMA_MSM 0x3196 CDMA Technologies MSM modem
product QUALCOMM2 AC8700 0x6000 AC8700
product QUALCOMM2 VW110L 0x1000 Vertex Wireless 110L modem
product QUALCOMM2 SIM5218 0x9000 SIM5218
+product QUALCOMM2 GOBI2000_QDL 0x9204 Qualcomm Gobi 2000 QDL
+product QUALCOMM2 GOBI2000 0x9205 Qualcomm Gobi 2000 modem
product QUALCOMMINC CDMA_MSM 0x0001 CDMA Technologies MSM modem
product QUALCOMMINC E0002 0x0002 3G modem
product QUALCOMMINC E0003 0x0003 3G modem
@@ -3050,10 +3083,10 @@ product SILICOM U2E 0x0001 U2E
product SILICOM GPE 0x0002 Psion Gold Port Ethernet
/* SI Labs */
-product SILABS VSTABI 0x0f91 Vstabi
+product SILABS VSTABI 0x0f91 VStabi Controller
product SILABS ARKHAM_DS101_M 0x1101 Arkham DS101 Monitor
product SILABS ARKHAM_DS101_A 0x1601 Arkham DS101 Adapter
-product SILABS BSM7DUSB 0x800a BSM7-D-USB
+product SILABS BSM7DUSB 0x800a SPORTident BSM7-D USB
product SILABS POLOLU 0x803b Pololu Serial
product SILABS CYGNAL_DEBUG 0x8044 Cygnal Debug Adapter
product SILABS SB_PARAMOUNT_ME 0x8043 Software Bisque Paramount ME
@@ -3062,6 +3095,7 @@ product SILABS GSM2228 0x8054 Enfora GSM2228 USB
product SILABS ARGUSISP 0x8066 Argussoft ISP
product SILABS IMS_USB_RS422 0x806f IMS USB-RS422
product SILABS CRUMB128 0x807a Crumb128 board
+product SILABS OPTRIS_MSPRO 0x80c4 Optris MSpro LT Thermometer
product SILABS DEGREE 0x80ca Degree Controls Inc
product SILABS TRACIENT 0x80dd Tracient RFID
product SILABS TRAQMATE 0x80ed Track Systems Traqmate
@@ -3074,9 +3108,11 @@ product SILABS WMRRIGBLASTER 0x814a WMR RIGblaster Plug&Play
product SILABS WMRRIGTALK 0x814b WMR RIGtalk RT1
product SILABS B_G_H3000 0x8156 B&G H3000 Data Cable
product SILABS HELICOM 0x815e Helicomm IP-Link 1220-DVM
+product SILABS HAMLINKUSB 0x815f Timewave HamLinkUSB
product SILABS AVIT_USB_TTL 0x818b AVIT Research USB-TTL
-product SILABS MJS_TOSLINK 0x819f MJS USB-TOSLINk
+product SILABS MJS_TOSLINK 0x819f MJS USB-TOSLINK
product SILABS WAVIT 0x81a6 ThinkOptics WavIt
+product SILABS MULTIPLEX_RC 0x81a9 Multiplex RC adapter
product SILABS MSD_DASHHAWK 0x81ac MSD DashHawk
product SILABS INSYS_MODEM 0x81ad INSYS Modem
product SILABS LIPOWSKY_JTAG 0x81c8 Lipowsky Baby-JTAG
@@ -3087,16 +3123,24 @@ product SILABS EMS_C1007 0x81f2 EMS C1007 HF RFID controller
product SILABS LIPOWSKY_HARP 0x8218 Lipowsky HARP-1
product SILABS C2_EDGE_MODEM 0x822b Commander 2 EDGE(GSM) Modem
product SILABS CYGNAL_GPS 0x826b Cygnal Fasttrax GPS
-product SILABS TELEGESYS_ETRX2 0x8293 Telegesys ETRX2USB
+product SILABS TELEGESIS_ETRX2 0x8293 Telegesis ETRX2USB
product SILABS PROCYON_AVS 0x82f9 Procyon AVS
product SILABS MC35PU 0x8341 MC35pu
product SILABS CYGNAL 0x8382 Cygnal
product SILABS AMBER_AMB2560 0x83a8 Amber Wireless AMB2560
+product SILABS DEKTEK_DTAPLUS 0x83d8 DekTec DTA Plus VHF/UHF Booster
product SILABS KYOCERA_GPS 0x8411 Kyocera GPS
+product SILABS IRZ_SG10 0x8418 IRZ SG-10 GSM/GPRS Modem
product SILABS BEI_VCP 0x846e BEI USB Sensor (VCP)
product SILABS BALLUFF_RFID 0x8477 Balluff RFID reader
+product SILABS AC_SERV_IBUS 0x85ea AC-Services IBUS Interface
+product SILABS AC_SERV_CIS 0x85eb AC-Services CIS-IBUS
+product SILABS AC_SERV_CAN 0x8664 AC-Services CAN Interface
+product SILABS AC_SERV_OBD 0x8665 AC-Services OBD Interface
product SILABS CP2102 0xea60 SILABS USB UART
product SILABS CP210X_2 0xea61 CP210x Serial
+product SILABS CP210X_3 0xea70 CP210x Serial
+product SILABS CP210X_4 0xea80 CP210x Serial
product SILABS INFINITY_MIC 0xea71 Infinity GPS-MIC-1 Radio Monophone
product SILABS USBSCOPE50 0xf001 USBscope50
product SILABS USBWAVE12 0xf002 USBwave12
@@ -3236,10 +3280,6 @@ product STELERA E1010 0x1010 3G modem
product STELERA E1011 0x1011 3G modem
product STELERA E1012 0x1012 3G modem
-/* MpMan products */
-product MPMAN MPF400_1 0x36d0 MPF400 Music Player 1Go
-product MPMAN MPF400_2 0x25a8 MPF400 Music Player 2Go
-
/* STMicroelectronics products */
product STMICRO BIOCPU 0x2016 Biometric Coprocessor
product STMICRO COMMUNICATOR 0x7554 USB Communicator
@@ -3262,6 +3302,9 @@ product SUN KEYBOARD_TYPE_7 0x00a2 Type 7 USB keyboard
product SUN MOUSE 0x0100 Type 6 USB mouse
product SUN KBD_HUB 0x100e Kbd Hub
+/* Sunplus Innovation Technology Inc. products */
+product SUNPLUS USBMOUSE 0x0007 USB Optical Mouse
+
/* Super Top products */
product SUPERTOP IDE 0x6600 USB-IDE
OpenPOWER on IntegriCloud