|
@@ -233,6 +233,8 @@ static void option_instat_callback(struct urb *urb);
|
|
|
/* These Quectel products use Qualcomm's vendor ID */
|
|
|
#define QUECTEL_PRODUCT_UC20 0x9003
|
|
|
#define QUECTEL_PRODUCT_UC15 0x9090
|
|
|
+/* 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 */
|
|
@@ -280,6 +282,7 @@ static void option_instat_callback(struct urb *urb);
|
|
|
#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
|
|
@@ -645,6 +648,11 @@ static const struct option_blacklist_info telit_me910_blacklist = {
|
|
|
.reserved = BIT(1) | BIT(3),
|
|
|
};
|
|
|
|
|
|
+static const struct option_blacklist_info telit_me910_dual_modem_blacklist = {
|
|
|
+ .sendsetup = BIT(0),
|
|
|
+ .reserved = BIT(3),
|
|
|
+};
|
|
|
+
|
|
|
static const struct option_blacklist_info telit_le910_blacklist = {
|
|
|
.sendsetup = BIT(0),
|
|
|
.reserved = BIT(1) | BIT(2),
|
|
@@ -674,6 +682,10 @@ static const struct option_blacklist_info cinterion_rmnet2_blacklist = {
|
|
|
.reserved = BIT(4) | BIT(5),
|
|
|
};
|
|
|
|
|
|
+static const struct option_blacklist_info yuga_clm920_nc5_blacklist = {
|
|
|
+ .reserved = BIT(1) | BIT(4),
|
|
|
+};
|
|
|
+
|
|
|
static const struct usb_device_id option_ids[] = {
|
|
|
{ USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_COLT) },
|
|
|
{ USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA) },
|
|
@@ -1178,6 +1190,9 @@ static const struct usb_device_id option_ids[] = {
|
|
|
{ USB_DEVICE(QUALCOMM_VENDOR_ID, QUECTEL_PRODUCT_UC15)},
|
|
|
{ USB_DEVICE(QUALCOMM_VENDOR_ID, QUECTEL_PRODUCT_UC20),
|
|
|
.driver_info = (kernel_ulong_t)&net_intf4_blacklist },
|
|
|
+ /* Yuga products use Qualcomm vendor ID */
|
|
|
+ { USB_DEVICE(QUALCOMM_VENDOR_ID, YUGA_PRODUCT_CLM920_NC5),
|
|
|
+ .driver_info = (kernel_ulong_t)&yuga_clm920_nc5_blacklist },
|
|
|
/* Quectel products using Quectel vendor ID */
|
|
|
{ USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC21),
|
|
|
.driver_info = (kernel_ulong_t)&net_intf4_blacklist },
|
|
@@ -1244,6 +1259,8 @@ static const struct usb_device_id option_ids[] = {
|
|
|
.driver_info = (kernel_ulong_t)&telit_le922_blacklist_usbcfg0 },
|
|
|
{ USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_ME910),
|
|
|
.driver_info = (kernel_ulong_t)&telit_me910_blacklist },
|
|
|
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_ME910_DUAL_MODEM),
|
|
|
+ .driver_info = (kernel_ulong_t)&telit_me910_dual_modem_blacklist },
|
|
|
{ USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE910),
|
|
|
.driver_info = (kernel_ulong_t)&telit_le910_blacklist },
|
|
|
{ USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE910_USBCFG4),
|