2744 lines · 158.0 KB · C
RawDownload
// SPDX-License-Identifier: GPL-2.0/*  USB Driver for GSM modems   Copyright (C) 2005  Matthias Urlichs <smurf@smurf.noris.de>   Portions copied from the Keyspan driver by Hugh Blemings <hugh@blemings.org>   History: see the git log.   Work sponsored by: Sigos GmbH, Germany <info@sigos.de>   This driver exists because the "normal" serial driver doesn't work too well  with GSM modems. Issues:  - data loss -- one single Receive URB is not nearly enough  - nonstandard flow (Option devices) control  - controlling the baud rate doesn't make sense   This driver is named "option" because the most common device it's  used for is a PC-Card (with an internal OHCI-USB interface, behind  which the GSM interface sits), made by Option Inc.   Some of the "one port" devices actually exhibit multiple USB instances  on the USB bus. This is not a bug, these ports are used for different  device features.*/ #define DRIVER_AUTHOR "Matthias Urlichs <smurf@smurf.noris.de>"#define DRIVER_DESC "USB Driver for GSM modems" #include <linux/kernel.h>#include <linux/jiffies.h>#include <linux/errno.h>#include <linux/tty.h>#include <linux/slab.h>#include <linux/module.h>#include <linux/bitops.h>#include <linux/usb.h>#include <linux/usb/serial.h>#include "usb-wwan.h" /* Function prototypes */static int  option_probe(struct usb_serial *serial,			const struct usb_device_id *id);static int option_attach(struct usb_serial *serial);static void option_release(struct usb_serial *serial);static void option_instat_callback(struct urb *urb); /* Vendor and product IDs */#define OPTION_VENDOR_ID			0x0AF0#define OPTION_PRODUCT_COLT			0x5000#define OPTION_PRODUCT_RICOLA			0x6000#define OPTION_PRODUCT_RICOLA_LIGHT		0x6100#define OPTION_PRODUCT_RICOLA_QUAD		0x6200#define OPTION_PRODUCT_RICOLA_QUAD_LIGHT	0x6300#define OPTION_PRODUCT_RICOLA_NDIS		0x6050#define OPTION_PRODUCT_RICOLA_NDIS_LIGHT	0x6150#define OPTION_PRODUCT_RICOLA_NDIS_QUAD		0x6250#define OPTION_PRODUCT_RICOLA_NDIS_QUAD_LIGHT	0x6350#define OPTION_PRODUCT_COBRA			0x6500#define OPTION_PRODUCT_COBRA_BUS		0x6501#define OPTION_PRODUCT_VIPER			0x6600#define OPTION_PRODUCT_VIPER_BUS		0x6601#define OPTION_PRODUCT_GT_MAX_READY		0x6701#define OPTION_PRODUCT_FUJI_MODEM_LIGHT		0x6721#define OPTION_PRODUCT_FUJI_MODEM_GT		0x6741#define OPTION_PRODUCT_FUJI_MODEM_EX		0x6761#define OPTION_PRODUCT_KOI_MODEM		0x6800#define OPTION_PRODUCT_SCORPION_MODEM		0x6901#define OPTION_PRODUCT_ETNA_MODEM		0x7001#define OPTION_PRODUCT_ETNA_MODEM_LITE		0x7021#define OPTION_PRODUCT_ETNA_MODEM_GT		0x7041#define OPTION_PRODUCT_ETNA_MODEM_EX		0x7061#define OPTION_PRODUCT_ETNA_KOI_MODEM		0x7100#define OPTION_PRODUCT_GTM380_MODEM		0x7201 #define HUAWEI_VENDOR_ID			0x12D1#define HUAWEI_PRODUCT_E173			0x140C#define HUAWEI_PRODUCT_E1750			0x1406#define HUAWEI_PRODUCT_K4505			0x1464#define HUAWEI_PRODUCT_K3765			0x1465#define HUAWEI_PRODUCT_K4605			0x14C6#define HUAWEI_PRODUCT_E173S6			0x1C07 #define QUANTA_VENDOR_ID			0x0408#define QUANTA_PRODUCT_Q101			0xEA02#define QUANTA_PRODUCT_Q111			0xEA03#define QUANTA_PRODUCT_GLX			0xEA04#define QUANTA_PRODUCT_GKE			0xEA05#define QUANTA_PRODUCT_GLE			0xEA06 #define NOVATELWIRELESS_VENDOR_ID		0x1410 /* YISO PRODUCTS */ #define YISO_VENDOR_ID				0x0EAB#define YISO_PRODUCT_U893			0xC893 /* * NOVATEL WIRELESS PRODUCTS * * Note from Novatel Wireless: * If your Novatel modem does not work on linux, don't * change the option module, but check our website. If * that does not help, contact ddeschepper@nvtl.com*//* MERLIN EVDO PRODUCTS */#define NOVATELWIRELESS_PRODUCT_V640		0x1100#define NOVATELWIRELESS_PRODUCT_V620		0x1110#define NOVATELWIRELESS_PRODUCT_V740		0x1120#define NOVATELWIRELESS_PRODUCT_V720		0x1130 /* MERLIN HSDPA/HSPA PRODUCTS */#define NOVATELWIRELESS_PRODUCT_U730		0x1400#define NOVATELWIRELESS_PRODUCT_U740		0x1410#define NOVATELWIRELESS_PRODUCT_U870		0x1420#define NOVATELWIRELESS_PRODUCT_XU870		0x1430#define NOVATELWIRELESS_PRODUCT_X950D		0x1450 /* EXPEDITE PRODUCTS */#define NOVATELWIRELESS_PRODUCT_EV620		0x2100#define NOVATELWIRELESS_PRODUCT_ES720		0x2110#define NOVATELWIRELESS_PRODUCT_E725		0x2120#define NOVATELWIRELESS_PRODUCT_ES620		0x2130#define NOVATELWIRELESS_PRODUCT_EU730		0x2400#define NOVATELWIRELESS_PRODUCT_EU740		0x2410#define NOVATELWIRELESS_PRODUCT_EU870D		0x2420/* OVATION PRODUCTS */#define NOVATELWIRELESS_PRODUCT_MC727		0x4100#define NOVATELWIRELESS_PRODUCT_MC950D		0x4400/* * Note from Novatel Wireless: * All PID in the 5xxx range are currently reserved for * auto-install CDROMs, and should not be added to this * module. * * #define NOVATELWIRELESS_PRODUCT_U727		0x5010 * #define NOVATELWIRELESS_PRODUCT_MC727_NEW	0x5100*/#define NOVATELWIRELESS_PRODUCT_OVMC760		0x6002#define NOVATELWIRELESS_PRODUCT_MC780		0x6010#define NOVATELWIRELESS_PRODUCT_EVDO_FULLSPEED	0x6000#define NOVATELWIRELESS_PRODUCT_EVDO_HIGHSPEED	0x6001#define NOVATELWIRELESS_PRODUCT_HSPA_FULLSPEED	0x7000#define NOVATELWIRELESS_PRODUCT_HSPA_HIGHSPEED	0x7001#define NOVATELWIRELESS_PRODUCT_HSPA_HIGHSPEED3	0x7003#define NOVATELWIRELESS_PRODUCT_HSPA_HIGHSPEED4	0x7004#define NOVATELWIRELESS_PRODUCT_HSPA_HIGHSPEED5	0x7005#define NOVATELWIRELESS_PRODUCT_HSPA_HIGHSPEED6	0x7006#define NOVATELWIRELESS_PRODUCT_HSPA_HIGHSPEED7	0x7007#define NOVATELWIRELESS_PRODUCT_MC996D		0x7030#define NOVATELWIRELESS_PRODUCT_MF3470		0x7041#define NOVATELWIRELESS_PRODUCT_MC547		0x7042#define NOVATELWIRELESS_PRODUCT_EVDO_EMBEDDED_FULLSPEED	0x8000#define NOVATELWIRELESS_PRODUCT_EVDO_EMBEDDED_HIGHSPEED	0x8001#define NOVATELWIRELESS_PRODUCT_HSPA_EMBEDDED_FULLSPEED	0x9000#define NOVATELWIRELESS_PRODUCT_HSPA_EMBEDDED_HIGHSPEED	0x9001#define NOVATELWIRELESS_PRODUCT_E362		0x9010#define NOVATELWIRELESS_PRODUCT_E371		0x9011#define NOVATELWIRELESS_PRODUCT_U620L		0x9022#define NOVATELWIRELESS_PRODUCT_G2		0xA010#define NOVATELWIRELESS_PRODUCT_MC551		0xB001 #define UBLOX_VENDOR_ID				0x1546 /* AMOI PRODUCTS */#define AMOI_VENDOR_ID				0x1614#define AMOI_PRODUCT_H01			0x0800#define AMOI_PRODUCT_H01A			0x7002#define AMOI_PRODUCT_H02			0x0802#define AMOI_PRODUCT_SKYPEPHONE_S2		0x0407 #define DELL_VENDOR_ID				0x413C /* Dell modems */#define DELL_PRODUCT_5700_MINICARD		0x8114#define DELL_PRODUCT_5500_MINICARD		0x8115#define DELL_PRODUCT_5505_MINICARD		0x8116#define DELL_PRODUCT_5700_EXPRESSCARD		0x8117#define DELL_PRODUCT_5510_EXPRESSCARD		0x8118 #define DELL_PRODUCT_5700_MINICARD_SPRINT	0x8128#define DELL_PRODUCT_5700_MINICARD_TELUS	0x8129 #define DELL_PRODUCT_5720_MINICARD_VZW		0x8133#define DELL_PRODUCT_5720_MINICARD_SPRINT	0x8134#define DELL_PRODUCT_5720_MINICARD_TELUS	0x8135#define DELL_PRODUCT_5520_MINICARD_CINGULAR	0x8136#define DELL_PRODUCT_5520_MINICARD_GENERIC_L	0x8137#define DELL_PRODUCT_5520_MINICARD_GENERIC_I	0x8138 #define DELL_PRODUCT_5730_MINICARD_SPRINT	0x8180#define DELL_PRODUCT_5730_MINICARD_TELUS	0x8181#define DELL_PRODUCT_5730_MINICARD_VZW		0x8182 #define DELL_PRODUCT_5800_MINICARD_VZW		0x8195  /* Novatel E362 */#define DELL_PRODUCT_5800_V2_MINICARD_VZW	0x8196  /* Novatel E362 */#define DELL_PRODUCT_5804_MINICARD_ATT		0x819b  /* Novatel E371 */ #define DELL_PRODUCT_5821E			0x81d7#define DELL_PRODUCT_5821E_ESIM			0x81e0#define DELL_PRODUCT_5829E_ESIM			0x81e4#define DELL_PRODUCT_5829E			0x81e6#define DELL_PRODUCT_5826E_ESIM			0x81ea #define DELL_PRODUCT_FM101R_ESIM		0x8213#define DELL_PRODUCT_FM101R			0x8215 #define KYOCERA_VENDOR_ID			0x0c88#define KYOCERA_PRODUCT_KPC650			0x17da#define KYOCERA_PRODUCT_KPC680			0x180a #define ANYDATA_VENDOR_ID			0x16d5#define ANYDATA_PRODUCT_ADU_620UW		0x6202#define ANYDATA_PRODUCT_ADU_E100A		0x6501#define ANYDATA_PRODUCT_ADU_500A		0x6502 #define AXESSTEL_VENDOR_ID			0x1726#define AXESSTEL_PRODUCT_MV110H			0x1000 #define BANDRICH_VENDOR_ID			0x1A8D#define BANDRICH_PRODUCT_C100_1			0x1002#define BANDRICH_PRODUCT_C100_2			0x1003#define BANDRICH_PRODUCT_1004			0x1004#define BANDRICH_PRODUCT_1005			0x1005#define BANDRICH_PRODUCT_1006			0x1006#define BANDRICH_PRODUCT_1007			0x1007#define BANDRICH_PRODUCT_1008			0x1008#define BANDRICH_PRODUCT_1009			0x1009#define BANDRICH_PRODUCT_100A			0x100a #define BANDRICH_PRODUCT_100B			0x100b#define BANDRICH_PRODUCT_100C			0x100c#define BANDRICH_PRODUCT_100D			0x100d#define BANDRICH_PRODUCT_100E			0x100e #define BANDRICH_PRODUCT_100F			0x100f#define BANDRICH_PRODUCT_1010			0x1010#define BANDRICH_PRODUCT_1011			0x1011#define BANDRICH_PRODUCT_1012			0x1012 #define QUALCOMM_VENDOR_ID			0x05C6/* These Quectel products use Qualcomm's vendor ID */#define QUECTEL_PRODUCT_UC20			0x9003#define QUECTEL_PRODUCT_UC15			0x9090/* These u-blox products use Qualcomm's vendor ID */#define UBLOX_PRODUCT_R410M			0x90b2/* These Yuga products use Qualcomm's vendor ID */#define YUGA_PRODUCT_CLM920_NC5			0x9625 #define QUECTEL_VENDOR_ID			0x2c7c/* These Quectel products use Quectel's vendor ID */#define QUECTEL_PRODUCT_EC21			0x0121#define QUECTEL_PRODUCT_RG650V			0x0122#define QUECTEL_PRODUCT_EM061K_LTA		0x0123#define QUECTEL_PRODUCT_EM061K_LMS		0x0124#define QUECTEL_PRODUCT_EC25			0x0125#define QUECTEL_PRODUCT_EM060K_128		0x0128#define QUECTEL_PRODUCT_EM060K_129		0x0129#define QUECTEL_PRODUCT_EM060K_12a		0x012a#define QUECTEL_PRODUCT_EM060K_12b		0x012b#define QUECTEL_PRODUCT_EM060K_12c		0x012c#define QUECTEL_PRODUCT_EG91			0x0191#define QUECTEL_PRODUCT_EG95			0x0195#define QUECTEL_PRODUCT_BG96			0x0296#define QUECTEL_PRODUCT_EP06			0x0306#define QUECTEL_PRODUCT_EM05G			0x030a#define QUECTEL_PRODUCT_EM060K			0x030b#define QUECTEL_PRODUCT_EM05G_CS		0x030c#define QUECTEL_PRODUCT_EM05GV2			0x030e#define QUECTEL_PRODUCT_EM05CN_SG		0x0310#define QUECTEL_PRODUCT_EM05G_SG		0x0311#define QUECTEL_PRODUCT_EM05CN			0x0312#define QUECTEL_PRODUCT_EM05G_GR		0x0313#define QUECTEL_PRODUCT_EM05G_RS		0x0314#define QUECTEL_PRODUCT_RG255C			0x0316#define QUECTEL_PRODUCT_EM12			0x0512#define QUECTEL_PRODUCT_RM500Q			0x0800#define QUECTEL_PRODUCT_RM520N			0x0801#define QUECTEL_PRODUCT_EC200U			0x0901#define QUECTEL_PRODUCT_EG912Y			0x6001#define QUECTEL_PRODUCT_EC200S_CN		0x6002#define QUECTEL_PRODUCT_EC200A			0x6005#define QUECTEL_PRODUCT_EG916Q			0x6007#define QUECTEL_PRODUCT_EM061K_LWW		0x6008#define QUECTEL_PRODUCT_EM061K_LCN		0x6009#define QUECTEL_PRODUCT_EC200T			0x6026#define QUECTEL_PRODUCT_RM500K			0x7001 #define CMOTECH_VENDOR_ID			0x16d8#define CMOTECH_PRODUCT_6001			0x6001#define CMOTECH_PRODUCT_CMU_300			0x6002#define CMOTECH_PRODUCT_6003			0x6003#define CMOTECH_PRODUCT_6004			0x6004#define CMOTECH_PRODUCT_6005			0x6005#define CMOTECH_PRODUCT_CGU_628A		0x6006#define CMOTECH_PRODUCT_CHE_628S		0x6007#define CMOTECH_PRODUCT_CMU_301			0x6008#define CMOTECH_PRODUCT_CHU_628			0x6280#define CMOTECH_PRODUCT_CHU_628S		0x6281#define CMOTECH_PRODUCT_CDU_680			0x6803#define CMOTECH_PRODUCT_CDU_685A		0x6804#define CMOTECH_PRODUCT_CHU_720S		0x7001#define CMOTECH_PRODUCT_7002			0x7002#define CMOTECH_PRODUCT_CHU_629K		0x7003#define CMOTECH_PRODUCT_7004			0x7004#define CMOTECH_PRODUCT_7005			0x7005#define CMOTECH_PRODUCT_CGU_629			0x7006#define CMOTECH_PRODUCT_CHU_629S		0x700a#define CMOTECH_PRODUCT_CHU_720I		0x7211#define CMOTECH_PRODUCT_7212			0x7212#define CMOTECH_PRODUCT_7213			0x7213#define CMOTECH_PRODUCT_7251			0x7251#define CMOTECH_PRODUCT_7252			0x7252#define CMOTECH_PRODUCT_7253			0x7253 #define TELIT_VENDOR_ID				0x1bc7#define TELIT_PRODUCT_UC864E			0x1003#define TELIT_PRODUCT_UC864G			0x1004#define TELIT_PRODUCT_CC864_DUAL		0x1005#define TELIT_PRODUCT_CC864_SINGLE		0x1006#define TELIT_PRODUCT_DE910_DUAL		0x1010#define TELIT_PRODUCT_UE910_V2			0x1012#define TELIT_PRODUCT_LE922_USBCFG1		0x1040#define TELIT_PRODUCT_LE922_USBCFG2		0x1041#define TELIT_PRODUCT_LE922_USBCFG0		0x1042#define TELIT_PRODUCT_LE922_USBCFG3		0x1043#define TELIT_PRODUCT_LE922_USBCFG5		0x1045#define TELIT_PRODUCT_ME910			0x1100#define TELIT_PRODUCT_ME910_DUAL_MODEM		0x1101#define TELIT_PRODUCT_LE920			0x1200#define TELIT_PRODUCT_LE910			0x1201#define TELIT_PRODUCT_LE910_USBCFG4		0x1206#define TELIT_PRODUCT_LE920A4_1207		0x1207#define TELIT_PRODUCT_LE920A4_1208		0x1208#define TELIT_PRODUCT_LE920A4_1211		0x1211#define TELIT_PRODUCT_LE920A4_1212		0x1212#define TELIT_PRODUCT_LE920A4_1213		0x1213#define TELIT_PRODUCT_LE920A4_1214		0x1214 /* ZTE PRODUCTS */#define ZTE_VENDOR_ID				0x19d2#define ZTE_PRODUCT_MF622			0x0001#define ZTE_PRODUCT_MF628			0x0015#define ZTE_PRODUCT_MF626			0x0031#define ZTE_PRODUCT_ZM8620_X			0x0396#define ZTE_PRODUCT_ME3620_MBIM			0x0426#define ZTE_PRODUCT_ME3620_X			0x1432#define ZTE_PRODUCT_ME3620_L			0x1433#define ZTE_PRODUCT_AC2726			0xfff1#define ZTE_PRODUCT_MG880			0xfffd#define ZTE_PRODUCT_CDMA_TECH			0xfffe#define ZTE_PRODUCT_AC8710T			0xffff#define ZTE_PRODUCT_MC2718			0xffe8#define ZTE_PRODUCT_AD3812			0xffeb#define ZTE_PRODUCT_MC2716			0xffed #define BENQ_VENDOR_ID				0x04a5#define BENQ_PRODUCT_H10			0x4068 #define DLINK_VENDOR_ID				0x1186#define DLINK_PRODUCT_DWM_652			0x3e04#define DLINK_PRODUCT_DWM_652_U5		0xce16#define DLINK_PRODUCT_DWM_652_U5A		0xce1e #define QISDA_VENDOR_ID				0x1da5#define QISDA_PRODUCT_H21_4512			0x4512#define QISDA_PRODUCT_H21_4523			0x4523#define QISDA_PRODUCT_H20_4515			0x4515#define QISDA_PRODUCT_H20_4518			0x4518#define QISDA_PRODUCT_H20_4519			0x4519 /* TLAYTECH PRODUCTS */#define TLAYTECH_VENDOR_ID			0x20B9#define TLAYTECH_PRODUCT_TEU800			0x1682 /* TOSHIBA PRODUCTS */#define TOSHIBA_VENDOR_ID			0x0930#define TOSHIBA_PRODUCT_HSDPA_MINICARD		0x1302#define TOSHIBA_PRODUCT_G450			0x0d45 #define ALINK_VENDOR_ID				0x1e0e#define SIMCOM_PRODUCT_SIM7100E			0x9001 /* Yes, ALINK_VENDOR_ID */#define ALINK_PRODUCT_PH300			0x9100#define ALINK_PRODUCT_3GU			0x9200 /* ALCATEL PRODUCTS */#define ALCATEL_VENDOR_ID			0x1bbb#define ALCATEL_PRODUCT_X060S_X200		0x0000#define ALCATEL_PRODUCT_X220_X500D		0x0017#define ALCATEL_PRODUCT_L100V			0x011e#define ALCATEL_PRODUCT_L800MA			0x0203 #define PIRELLI_VENDOR_ID			0x1266#define PIRELLI_PRODUCT_C100_1			0x1002#define PIRELLI_PRODUCT_C100_2			0x1003#define PIRELLI_PRODUCT_1004			0x1004#define PIRELLI_PRODUCT_1005			0x1005#define PIRELLI_PRODUCT_1006			0x1006#define PIRELLI_PRODUCT_1007			0x1007#define PIRELLI_PRODUCT_1008			0x1008#define PIRELLI_PRODUCT_1009			0x1009#define PIRELLI_PRODUCT_100A			0x100a#define PIRELLI_PRODUCT_100B			0x100b#define PIRELLI_PRODUCT_100C			0x100c#define PIRELLI_PRODUCT_100D			0x100d#define PIRELLI_PRODUCT_100E			0x100e#define PIRELLI_PRODUCT_100F			0x100f#define PIRELLI_PRODUCT_1011			0x1011#define PIRELLI_PRODUCT_1012			0x1012 /* Airplus products */#define AIRPLUS_VENDOR_ID			0x1011#define AIRPLUS_PRODUCT_MCD650			0x3198 /* Longcheer/Longsung vendor ID; makes whitelabel devices that * many other vendors like 4G Systems, Alcatel, ChinaBird, * Mobidata, etc sell under their own brand names. */#define LONGCHEER_VENDOR_ID			0x1c9e /* 4G Systems products *//* This one was sold as the VW and Skoda "Carstick LTE" */#define FOUR_G_SYSTEMS_PRODUCT_CARSTICK_LTE	0x7605/* This is the 4G XS Stick W14 a.k.a. Mobilcom Debitel Surf-Stick * * It seems to contain a Qualcomm QSC6240/6290 chipset            */#define FOUR_G_SYSTEMS_PRODUCT_W14		0x9603#define FOUR_G_SYSTEMS_PRODUCT_W100		0x9b01 /* Fujisoft products */#define FUJISOFT_PRODUCT_FS040U			0x9b02 /* iBall 3.5G connect wireless modem */#define IBALL_3_5G_CONNECT			0x9605 /* Zoom */#define ZOOM_PRODUCT_4597			0x9607 /* SpeedUp SU9800 usb 3g modem */#define SPEEDUP_PRODUCT_SU9800			0x9800 /* Haier products */#define HAIER_VENDOR_ID				0x201e#define HAIER_PRODUCT_CE81B			0x10f8#define HAIER_PRODUCT_CE100			0x2009 /* Gemalto's Cinterion products (formerly Siemens) */#define SIEMENS_VENDOR_ID			0x0681#define CINTERION_VENDOR_ID			0x1e2d#define CINTERION_PRODUCT_HC25_MDMNET		0x0040#define CINTERION_PRODUCT_HC25_MDM		0x0047#define CINTERION_PRODUCT_HC28_MDMNET		0x004A /* same for HC28J */#define CINTERION_PRODUCT_HC28_MDM		0x004C#define CINTERION_PRODUCT_EU3_E			0x0051#define CINTERION_PRODUCT_EU3_P			0x0052#define CINTERION_PRODUCT_PH8			0x0053#define CINTERION_PRODUCT_AHXX			0x0055#define CINTERION_PRODUCT_PLXX			0x0060#define CINTERION_PRODUCT_EXS82			0x006c#define CINTERION_PRODUCT_PH8_2RMNET		0x0082#define CINTERION_PRODUCT_PH8_AUDIO		0x0083#define CINTERION_PRODUCT_AHXX_2RMNET		0x0084#define CINTERION_PRODUCT_AHXX_AUDIO		0x0085#define CINTERION_PRODUCT_CLS8			0x00b0#define CINTERION_PRODUCT_MV31_MBIM		0x00b3#define CINTERION_PRODUCT_MV31_RMNET		0x00b7#define CINTERION_PRODUCT_MV31_2_MBIM		0x00b8#define CINTERION_PRODUCT_MV31_2_RMNET		0x00b9#define CINTERION_PRODUCT_MV32_WA		0x00f1#define CINTERION_PRODUCT_MV32_WB		0x00f2#define CINTERION_PRODUCT_MV32_WA_RMNET		0x00f3#define CINTERION_PRODUCT_MV32_WB_RMNET		0x00f4 /* Olivetti products */#define OLIVETTI_VENDOR_ID			0x0b3c#define OLIVETTI_PRODUCT_OLICARD100		0xc000#define OLIVETTI_PRODUCT_OLICARD120		0xc001#define OLIVETTI_PRODUCT_OLICARD140		0xc002#define OLIVETTI_PRODUCT_OLICARD145		0xc003#define OLIVETTI_PRODUCT_OLICARD155		0xc004#define OLIVETTI_PRODUCT_OLICARD200		0xc005#define OLIVETTI_PRODUCT_OLICARD160		0xc00a#define OLIVETTI_PRODUCT_OLICARD500		0xc00b /* Celot products */#define CELOT_VENDOR_ID				0x211f#define CELOT_PRODUCT_CT680M			0x6801 /* Samsung products */#define SAMSUNG_VENDOR_ID                       0x04e8#define SAMSUNG_PRODUCT_GT_B3730                0x6889 /* YUGA products  www.yuga-info.com gavin.kx@qq.com */#define YUGA_VENDOR_ID				0x257A#define YUGA_PRODUCT_CEM600			0x1601#define YUGA_PRODUCT_CEM610			0x1602#define YUGA_PRODUCT_CEM500			0x1603#define YUGA_PRODUCT_CEM510			0x1604#define YUGA_PRODUCT_CEM800			0x1605#define YUGA_PRODUCT_CEM900			0x1606

Lines 1–500 of 2744.

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t