@@ -625,6 +625,8 @@ static void option_instat_callback(struct urb *urb);
625625#define MEIGSMART_PRODUCT_SRM825L 0x4d22
626626/* MeiG Smart SLM320 based on UNISOC UIS8910 */
627627#define MEIGSMART_PRODUCT_SLM320 0x4d41
628+ /* MeiG Smart SLM770A based on ASR1803 */
629+ #define MEIGSMART_PRODUCT_SLM770A 0x4d57
628630
629631/* Device flags */
630632
@@ -1395,6 +1397,12 @@ static const struct usb_device_id option_ids[] = {
13951397 .driver_info = RSVD (0 ) | NCTRL (2 ) | RSVD (3 ) | RSVD (4 ) },
13961398 { USB_DEVICE_INTERFACE_CLASS (TELIT_VENDOR_ID , 0x10aa , 0xff ), /* Telit FN920C04 (MBIM) */
13971399 .driver_info = NCTRL (3 ) | RSVD (4 ) | RSVD (5 ) },
1400+ { USB_DEVICE_INTERFACE_CLASS (TELIT_VENDOR_ID , 0x10c0 , 0xff ), /* Telit FE910C04 (rmnet) */
1401+ .driver_info = RSVD (0 ) | NCTRL (3 ) },
1402+ { USB_DEVICE_INTERFACE_CLASS (TELIT_VENDOR_ID , 0x10c4 , 0xff ), /* Telit FE910C04 (rmnet) */
1403+ .driver_info = RSVD (0 ) | NCTRL (3 ) },
1404+ { USB_DEVICE_INTERFACE_CLASS (TELIT_VENDOR_ID , 0x10c8 , 0xff ), /* Telit FE910C04 (rmnet) */
1405+ .driver_info = RSVD (0 ) | NCTRL (2 ) | RSVD (3 ) | RSVD (4 ) },
13981406 { USB_DEVICE (TELIT_VENDOR_ID , TELIT_PRODUCT_ME910 ),
13991407 .driver_info = NCTRL (0 ) | RSVD (1 ) | RSVD (3 ) },
14001408 { USB_DEVICE (TELIT_VENDOR_ID , TELIT_PRODUCT_ME910_DUAL_MODEM ),
@@ -2247,6 +2255,8 @@ static const struct usb_device_id option_ids[] = {
22472255 .driver_info = NCTRL (2 ) },
22482256 { USB_DEVICE_AND_INTERFACE_INFO (MEDIATEK_VENDOR_ID , 0x7127 , 0xff , 0x00 , 0x00 ),
22492257 .driver_info = NCTRL (2 ) | NCTRL (3 ) | NCTRL (4 ) },
2258+ { USB_DEVICE_AND_INTERFACE_INFO (MEDIATEK_VENDOR_ID , 0x7129 , 0xff , 0x00 , 0x00 ), /* MediaTek T7XX */
2259+ .driver_info = NCTRL (2 ) | NCTRL (3 ) | NCTRL (4 ) },
22502260 { USB_DEVICE (CELLIENT_VENDOR_ID , CELLIENT_PRODUCT_MEN200 ) },
22512261 { USB_DEVICE (CELLIENT_VENDOR_ID , CELLIENT_PRODUCT_MPL200 ),
22522262 .driver_info = RSVD (1 ) | RSVD (4 ) },
@@ -2375,16 +2385,33 @@ static const struct usb_device_id option_ids[] = {
23752385 { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x0116 , 0xff , 0xff , 0x30 ) }, /* NetPrisma LCUK54-WWD for Golbal EDU */
23762386 { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x0116 , 0xff , 0x00 , 0x40 ) },
23772387 { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x0116 , 0xff , 0xff , 0x40 ) },
2388+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010a , 0xff , 0xff , 0x30 ) }, /* NetPrisma LCUK54-WRD for WWAN Ready */
2389+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010a , 0xff , 0x00 , 0x40 ) },
2390+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010a , 0xff , 0xff , 0x40 ) },
2391+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010b , 0xff , 0xff , 0x30 ) }, /* NetPrisma LCUK54-WWD for WWAN Ready */
2392+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010b , 0xff , 0x00 , 0x40 ) },
2393+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010b , 0xff , 0xff , 0x40 ) },
2394+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010c , 0xff , 0xff , 0x30 ) }, /* NetPrisma LCUK54-WRD for WWAN Ready */
2395+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010c , 0xff , 0x00 , 0x40 ) },
2396+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010c , 0xff , 0xff , 0x40 ) },
2397+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010d , 0xff , 0xff , 0x30 ) }, /* NetPrisma LCUK54-WWD for WWAN Ready */
2398+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010d , 0xff , 0x00 , 0x40 ) },
2399+ { USB_DEVICE_AND_INTERFACE_INFO (0x3731 , 0x010d , 0xff , 0xff , 0x40 ) },
23782400 { USB_DEVICE_AND_INTERFACE_INFO (OPPO_VENDOR_ID , OPPO_PRODUCT_R11 , 0xff , 0xff , 0x30 ) },
23792401 { USB_DEVICE_AND_INTERFACE_INFO (SIERRA_VENDOR_ID , SIERRA_PRODUCT_EM9191 , 0xff , 0xff , 0x30 ) },
23802402 { USB_DEVICE_AND_INTERFACE_INFO (SIERRA_VENDOR_ID , SIERRA_PRODUCT_EM9191 , 0xff , 0xff , 0x40 ) },
23812403 { USB_DEVICE_AND_INTERFACE_INFO (SIERRA_VENDOR_ID , SIERRA_PRODUCT_EM9191 , 0xff , 0 , 0 ) },
23822404 { USB_DEVICE_AND_INTERFACE_INFO (UNISOC_VENDOR_ID , TOZED_PRODUCT_LT70C , 0xff , 0 , 0 ) },
23832405 { USB_DEVICE_AND_INTERFACE_INFO (UNISOC_VENDOR_ID , LUAT_PRODUCT_AIR720U , 0xff , 0 , 0 ) },
23842406 { USB_DEVICE_AND_INTERFACE_INFO (MEIGSMART_VENDOR_ID , MEIGSMART_PRODUCT_SLM320 , 0xff , 0 , 0 ) },
2407+ { USB_DEVICE_AND_INTERFACE_INFO (MEIGSMART_VENDOR_ID , MEIGSMART_PRODUCT_SLM770A , 0xff , 0 , 0 ) },
23852408 { USB_DEVICE_AND_INTERFACE_INFO (MEIGSMART_VENDOR_ID , MEIGSMART_PRODUCT_SRM825L , 0xff , 0xff , 0x30 ) },
23862409 { USB_DEVICE_AND_INTERFACE_INFO (MEIGSMART_VENDOR_ID , MEIGSMART_PRODUCT_SRM825L , 0xff , 0xff , 0x40 ) },
23872410 { USB_DEVICE_AND_INTERFACE_INFO (MEIGSMART_VENDOR_ID , MEIGSMART_PRODUCT_SRM825L , 0xff , 0xff , 0x60 ) },
2411+ { USB_DEVICE_INTERFACE_CLASS (0x1bbb , 0x0530 , 0xff ), /* TCL IK512 MBIM */
2412+ .driver_info = NCTRL (1 ) },
2413+ { USB_DEVICE_INTERFACE_CLASS (0x1bbb , 0x0640 , 0xff ), /* TCL IK512 ECM */
2414+ .driver_info = NCTRL (3 ) },
23882415 { } /* Terminating entry */
23892416};
23902417MODULE_DEVICE_TABLE (usb , option_ids );
0 commit comments