@@ -255,6 +255,10 @@ static void option_instat_callback(struct urb *urb);
255
255
#define QUECTEL_PRODUCT_EM061K_LMS 0x0124
256
256
#define QUECTEL_PRODUCT_EC25 0x0125
257
257
#define QUECTEL_PRODUCT_EM060K_128 0x0128
258
+ #define QUECTEL_PRODUCT_EM060K_129 0x0129
259
+ #define QUECTEL_PRODUCT_EM060K_12a 0x012a
260
+ #define QUECTEL_PRODUCT_EM060K_12b 0x012b
261
+ #define QUECTEL_PRODUCT_EM060K_12c 0x012c
258
262
#define QUECTEL_PRODUCT_EG91 0x0191
259
263
#define QUECTEL_PRODUCT_EG95 0x0195
260
264
#define QUECTEL_PRODUCT_BG96 0x0296
@@ -1218,6 +1222,18 @@ static const struct usb_device_id option_ids[] = {
1218
1222
{ USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_128 , 0xff , 0xff , 0x30 ) },
1219
1223
{ USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_128 , 0xff , 0x00 , 0x40 ) },
1220
1224
{ USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_128 , 0xff , 0xff , 0x40 ) },
1225
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_129 , 0xff , 0xff , 0x30 ) },
1226
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_129 , 0xff , 0x00 , 0x40 ) },
1227
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_129 , 0xff , 0xff , 0x40 ) },
1228
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_12a , 0xff , 0xff , 0x30 ) },
1229
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_12a , 0xff , 0x00 , 0x40 ) },
1230
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_12a , 0xff , 0xff , 0x40 ) },
1231
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_12b , 0xff , 0xff , 0x30 ) },
1232
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_12b , 0xff , 0x00 , 0x40 ) },
1233
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_12b , 0xff , 0xff , 0x40 ) },
1234
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_12c , 0xff , 0xff , 0x30 ) },
1235
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_12c , 0xff , 0x00 , 0x40 ) },
1236
+ { USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM060K_12c , 0xff , 0xff , 0x40 ) },
1221
1237
{ USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM061K_LCN , 0xff , 0xff , 0x30 ) },
1222
1238
{ USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM061K_LCN , 0xff , 0x00 , 0x40 ) },
1223
1239
{ USB_DEVICE_AND_INTERFACE_INFO (QUECTEL_VENDOR_ID , QUECTEL_PRODUCT_EM061K_LCN , 0xff , 0xff , 0x40 ) },
@@ -1360,6 +1376,12 @@ static const struct usb_device_id option_ids[] = {
1360
1376
.driver_info = NCTRL (2 ) | RSVD (3 ) },
1361
1377
{ USB_DEVICE_INTERFACE_CLASS (TELIT_VENDOR_ID , 0x1083 , 0xff ), /* Telit FE990 (ECM) */
1362
1378
.driver_info = NCTRL (0 ) | RSVD (1 ) },
1379
+ { USB_DEVICE_INTERFACE_CLASS (TELIT_VENDOR_ID , 0x10a0 , 0xff ), /* Telit FN20C04 (rmnet) */
1380
+ .driver_info = RSVD (0 ) | NCTRL (3 ) },
1381
+ { USB_DEVICE_INTERFACE_CLASS (TELIT_VENDOR_ID , 0x10a4 , 0xff ), /* Telit FN20C04 (rmnet) */
1382
+ .driver_info = RSVD (0 ) | NCTRL (3 ) },
1383
+ { USB_DEVICE_INTERFACE_CLASS (TELIT_VENDOR_ID , 0x10a9 , 0xff ), /* Telit FN20C04 (rmnet) */
1384
+ .driver_info = RSVD (0 ) | NCTRL (2 ) | RSVD (3 ) | RSVD (4 ) },
1363
1385
{ USB_DEVICE (TELIT_VENDOR_ID , TELIT_PRODUCT_ME910 ),
1364
1386
.driver_info = NCTRL (0 ) | RSVD (1 ) | RSVD (3 ) },
1365
1387
{ USB_DEVICE (TELIT_VENDOR_ID , TELIT_PRODUCT_ME910_DUAL_MODEM ),
@@ -2052,6 +2074,10 @@ static const struct usb_device_id option_ids[] = {
2052
2074
.driver_info = RSVD (3 ) },
2053
2075
{ USB_DEVICE_INTERFACE_CLASS (LONGCHEER_VENDOR_ID , 0x9803 , 0xff ),
2054
2076
.driver_info = RSVD (4 ) },
2077
+ { USB_DEVICE (LONGCHEER_VENDOR_ID , 0x9b05 ), /* Longsung U8300 */
2078
+ .driver_info = RSVD (4 ) | RSVD (5 ) },
2079
+ { USB_DEVICE (LONGCHEER_VENDOR_ID , 0x9b3c ), /* Longsung U9300 */
2080
+ .driver_info = RSVD (0 ) | RSVD (4 ) },
2055
2081
{ USB_DEVICE (LONGCHEER_VENDOR_ID , ZOOM_PRODUCT_4597 ) },
2056
2082
{ USB_DEVICE (LONGCHEER_VENDOR_ID , IBALL_3_5G_CONNECT ) },
2057
2083
{ USB_DEVICE (HAIER_VENDOR_ID , HAIER_PRODUCT_CE100 ) },
@@ -2272,15 +2298,29 @@ static const struct usb_device_id option_ids[] = {
2272
2298
{ USB_DEVICE_AND_INTERFACE_INFO (0x2cb7 , 0x010b , 0xff , 0xff , 0x30 ) }, /* Fibocom FG150 Diag */
2273
2299
{ USB_DEVICE_AND_INTERFACE_INFO (0x2cb7 , 0x010b , 0xff , 0 , 0 ) }, /* Fibocom FG150 AT */
2274
2300
{ USB_DEVICE_INTERFACE_CLASS (0x2cb7 , 0x0111 , 0xff ) }, /* Fibocom FM160 (MBIM mode) */
2301
+ { USB_DEVICE_INTERFACE_CLASS (0x2cb7 , 0x0115 , 0xff ), /* Fibocom FM135 (laptop MBIM) */
2302
+ .driver_info = RSVD (5 ) },
2275
2303
{ USB_DEVICE_INTERFACE_CLASS (0x2cb7 , 0x01a0 , 0xff ) }, /* Fibocom NL668-AM/NL652-EU (laptop MBIM) */
2276
2304
{ USB_DEVICE_INTERFACE_CLASS (0x2cb7 , 0x01a2 , 0xff ) }, /* Fibocom FM101-GL (laptop MBIM) */
2277
2305
{ USB_DEVICE_INTERFACE_CLASS (0x2cb7 , 0x01a3 , 0xff ) }, /* Fibocom FM101-GL (laptop MBIM) */
2278
2306
{ USB_DEVICE_INTERFACE_CLASS (0x2cb7 , 0x01a4 , 0xff ), /* Fibocom FM101-GL (laptop MBIM) */
2279
2307
.driver_info = RSVD (4 ) },
2308
+ { USB_DEVICE_INTERFACE_CLASS (0x2cb7 , 0x0a04 , 0xff ) }, /* Fibocom FM650-CN (ECM mode) */
2309
+ { USB_DEVICE_INTERFACE_CLASS (0x2cb7 , 0x0a05 , 0xff ) }, /* Fibocom FM650-CN (NCM mode) */
2310
+ { USB_DEVICE_INTERFACE_CLASS (0x2cb7 , 0x0a06 , 0xff ) }, /* Fibocom FM650-CN (RNDIS mode) */
2311
+ { USB_DEVICE_INTERFACE_CLASS (0x2cb7 , 0x0a07 , 0xff ) }, /* Fibocom FM650-CN (MBIM mode) */
2280
2312
{ USB_DEVICE_INTERFACE_CLASS (0x2df3 , 0x9d03 , 0xff ) }, /* LongSung M5710 */
2281
2313
{ USB_DEVICE_INTERFACE_CLASS (0x305a , 0x1404 , 0xff ) }, /* GosunCn GM500 RNDIS */
2282
2314
{ USB_DEVICE_INTERFACE_CLASS (0x305a , 0x1405 , 0xff ) }, /* GosunCn GM500 MBIM */
2283
2315
{ USB_DEVICE_INTERFACE_CLASS (0x305a , 0x1406 , 0xff ) }, /* GosunCn GM500 ECM/NCM */
2316
+ { USB_DEVICE (0x33f8 , 0x0104 ), /* Rolling RW101-GL (laptop RMNET) */
2317
+ .driver_info = RSVD (4 ) | RSVD (5 ) },
2318
+ { USB_DEVICE_INTERFACE_CLASS (0x33f8 , 0x01a2 , 0xff ) }, /* Rolling RW101-GL (laptop MBIM) */
2319
+ { USB_DEVICE_INTERFACE_CLASS (0x33f8 , 0x01a3 , 0xff ) }, /* Rolling RW101-GL (laptop MBIM) */
2320
+ { USB_DEVICE_INTERFACE_CLASS (0x33f8 , 0x01a4 , 0xff ), /* Rolling RW101-GL (laptop MBIM) */
2321
+ .driver_info = RSVD (4 ) },
2322
+ { USB_DEVICE_INTERFACE_CLASS (0x33f8 , 0x0115 , 0xff ), /* Rolling RW135-GL (laptop MBIM) */
2323
+ .driver_info = RSVD (5 ) },
2284
2324
{ USB_DEVICE_AND_INTERFACE_INFO (OPPO_VENDOR_ID , OPPO_PRODUCT_R11 , 0xff , 0xff , 0x30 ) },
2285
2325
{ USB_DEVICE_AND_INTERFACE_INFO (SIERRA_VENDOR_ID , SIERRA_PRODUCT_EM9191 , 0xff , 0xff , 0x30 ) },
2286
2326
{ USB_DEVICE_AND_INTERFACE_INFO (SIERRA_VENDOR_ID , SIERRA_PRODUCT_EM9191 , 0xff , 0xff , 0x40 ) },
0 commit comments