The patch is meant to support LARA-R6 Cat 1 module family. Module USB ID: Vendor ID: 0x05c6 Product ID: 0x90fA Interface layout: If 0: Diagnostic If 1: AT parser If 2: AT parser If 3: QMI wwan (not available in all versions) Signed-off-by: Marco De Marco <marco.demarco@xxxxxxxxxx> --- ADB interface is not available. Diagnostic interface (If 0) can be used with option driver. Output of usb-devices command (this version does not have QMI WWAN): T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3 Spd=480 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=05c6 ProdID=90fa Rev=00.00 S: Manufacturer=Qualcomm, Incorporated S: Product=Qualcomm CDMA Technologies MSM S: SerialNumber=7da8aacd C: #Ifs= 3 Cfg#= 1 Atr=c0 MxPwr=500mA I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=(none) I: If#=0x1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) I: If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=fe Prot=ff Driver=(none) Thanks for your patience. diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c index d08e1de26..bef24b50b 100644 --- a/drivers/net/usb/qmi_wwan.c +++ b/drivers/net/usb/qmi_wwan.c @@ -1115,6 +1115,7 @@ static const struct usb_device_id products[] = { {QMI_FIXED_INTF(0x05c6, 0x9083, 3)}, {QMI_FIXED_INTF(0x05c6, 0x9084, 4)}, {QMI_FIXED_INTF(0x05c6, 0x90b2, 3)}, /* ublox R410M */ + {QMI_QUIRK_SET_DTR(0x05c6, 0x90fa, 3)}, /* ublox R6XX */ {QMI_FIXED_INTF(0x05c6, 0x920d, 0)}, {QMI_FIXED_INTF(0x05c6, 0x920d, 5)}, {QMI_QUIRK_SET_DTR(0x05c6, 0x9625, 4)}, /* YUGA CLM920-NC5 */ diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c index aeaa3756f..32d1eac8c 100644 --- a/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c @@ -238,6 +238,7 @@ static void option_instat_callback(struct urb *urb); #define QUECTEL_PRODUCT_UC15 0x9090 /* These u-blox products use Qualcomm's vendor ID */ #define UBLOX_PRODUCT_R410M 0x90b2 +#define UBLOX_PRODUCT_R6XX 0x90fa /* These Yuga products use Qualcomm's vendor ID */ #define YUGA_PRODUCT_CLM920_NC5 0x9625 @@ -1101,6 +1102,8 @@ static const struct usb_device_id option_ids[] = { /* u-blox products using Qualcomm vendor ID */ { USB_DEVICE(QUALCOMM_VENDOR_ID, UBLOX_PRODUCT_R410M), .driver_info = RSVD(1) | RSVD(3) }, + { USB_DEVICE(QUALCOMM_VENDOR_ID, UBLOX_PRODUCT_R6XX), + .driver_info = RSVD(3) }, /* Quectel products using Quectel vendor ID */ { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC21, 0xff, 0xff, 0xff), .driver_info = NUMEP2 }, On giovedì 1 luglio 2021 09:14:25 CEST you wrote: > On Wed, Jun 30, 2021 at 07:09:20PM +0000, Marco De Marco wrote: > > Support for u-blox LARA-R6 modules family, usb serial interface. > > Please include the interface layout here too (cf. commit 4205cb01f6e9 > ("USB: serial: option: adding support for ublox R410M")) and post the > output of usb-devices (or lsusb -v) for this device. > > Isn't there an ADB interface that should be reserved as well for > example? > > Please also use the common "USB: serial: option:" prefix in your commit > summary (Subject). > > > Signed-off-by: Marco De Marco <marco.demarco@xxxxxxxxxx> > > --- > > > > > > diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c > > index aeaa3756f..05d0379c9 100644 > > --- a/drivers/usb/serial/option.c > > +++ b/drivers/usb/serial/option.c > > @@ -238,6 +238,7 @@ static void option_instat_callback(struct urb *urb); > > > > #define QUECTEL_PRODUCT_UC15 0x9090 > > /* These u-blox products use Qualcomm's vendor ID */ > > #define UBLOX_PRODUCT_R410M 0x90b2 > > > > +#define UBLOX_PRODUCT_R6XX 0x90fa > > Looks like the indentation for the value is off here, or in any case you > should be using tabs rather than spaces. > > > /* These Yuga products use Qualcomm's vendor ID */ > > #define YUGA_PRODUCT_CLM920_NC5 0x9625 > > > > @@ -1101,6 +1102,8 @@ static const struct usb_device_id option_ids[] = { > > > > /* u-blox products using Qualcomm vendor ID */ > > { USB_DEVICE(QUALCOMM_VENDOR_ID, UBLOX_PRODUCT_R410M), > > > > .driver_info = RSVD(1) | RSVD(3) }, > > > > + { USB_DEVICE(QUALCOMM_VENDOR_ID, UBLOX_PRODUCT_R6XX), > > + .driver_info = RSVD(3) }, > > > > /* Quectel products using Quectel vendor ID */ > > { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC21, > > 0xff, 0xff, 0xff),> > > .driver_info = NUMEP2 }, > > Johan