* [PATCH] usb: Add support for u-blox LARA-R6 modules family
@ 2021-06-30 19:09 Marco De Marco
2021-07-01 7:14 ` Johan Hovold
0 siblings, 1 reply; 4+ messages in thread
From: Marco De Marco @ 2021-06-30 19:09 UTC (permalink / raw)
To: johan, linux-usb
Support for u-blox LARA-R6 modules family, usb serial interface.
Signed-off-by: Marco De Marco <marco.demarco@posteo.net>
---
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
/* 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 },
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] usb: Add support for u-blox LARA-R6 modules family
2021-06-30 19:09 [PATCH] usb: Add support for u-blox LARA-R6 modules family Marco De Marco
@ 2021-07-01 7:14 ` Johan Hovold
2021-07-03 12:53 ` [PATCH] usb: serial: option: Add support for u-blox LARA-R6 family Marco De Marco
0 siblings, 1 reply; 4+ messages in thread
From: Johan Hovold @ 2021-07-01 7:14 UTC (permalink / raw)
To: Marco De Marco; +Cc: linux-usb
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@posteo.net>
> ---
>
>
> 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
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] usb: serial: option: Add support for u-blox LARA-R6 family
2021-07-01 7:14 ` Johan Hovold
@ 2021-07-03 12:53 ` Marco De Marco
2021-07-05 8:31 ` Johan Hovold
0 siblings, 1 reply; 4+ messages in thread
From: Marco De Marco @ 2021-07-03 12:53 UTC (permalink / raw)
To: Johan Hovold, linux-usb
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@posteo.net>
---
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@posteo.net>
> > ---
> >
> >
> > 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
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] usb: serial: option: Add support for u-blox LARA-R6 family
2021-07-03 12:53 ` [PATCH] usb: serial: option: Add support for u-blox LARA-R6 family Marco De Marco
@ 2021-07-05 8:31 ` Johan Hovold
0 siblings, 0 replies; 4+ messages in thread
From: Johan Hovold @ 2021-07-05 8:31 UTC (permalink / raw)
To: Marco De Marco; +Cc: linux-usb
On Sat, Jul 03, 2021 at 12:53:20PM +0000, Marco De Marco wrote:
> 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@posteo.net>
>
> ---
>
> 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.
Thanks for the details. All looks good now except that you included the
qmi_wwan changes below.
Can you resend this as a v2 (i.e. a new mail with subject "[PATCH v2]
USB: serial: ...") without the qmi_wwan bits?
Generally when updating you should include a short summary below the
cut-off line ("---"). Please keep the usb-devices output there as well
when resending for completeness (or put it in the commit message).
> 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 },
Johan
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-07-05 8:31 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-30 19:09 [PATCH] usb: Add support for u-blox LARA-R6 modules family Marco De Marco
2021-07-01 7:14 ` Johan Hovold
2021-07-03 12:53 ` [PATCH] usb: serial: option: Add support for u-blox LARA-R6 family Marco De Marco
2021-07-05 8:31 ` Johan Hovold
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.