* [PATCH] USB: serial: option: add Quectel EM060K modem
@ 2022-07-19 11:28 Yonglin Tan
2022-07-24 8:41 ` Johan Hovold
2022-08-29 13:17 ` Johan Hovold
0 siblings, 2 replies; 6+ messages in thread
From: Yonglin Tan @ 2022-07-19 11:28 UTC (permalink / raw)
To: johan; +Cc: gregkh, linux-usb, linux-kernel, Yonglin Tan
Add usb product id entry for the Quectel EM060K module.
"MBIM mode": DIAG + NMEA + AT + MODEM + MBIM
T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 8 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=2c7c ProdID=030b Rev= 5.04
S: Manufacturer=Quectel
S: Product=EM060K-GL
S: SerialNumber=89fb57db
C:* #Ifs= 7 Cfg#= 1 Atr=a0 MxPwr=500mA
A: FirstIf#= 8 IfCount= 2 Cls=02(comm.) Sub=0e Prot=00
I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=40 Driver=option
E: Ad=83(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=option
E: Ad=85(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=option
E: Ad=87(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 8 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0e Prot=00 Driver=cdc_mbim
E: Ad=88(I) Atr=03(Int.) MxPS= 64 Ivl=32ms
I: If#= 9 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim
I:* If#= 9 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim
E: Ad=8e(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=0f(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#=12 Alt= 0 #EPs= 1 Cls=ff(vend.) Sub=ff Prot=70 Driver=(none)
E: Ad=89(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
Signed-off-by: Yonglin Tan <yonglin.tan@outlook.com>
---
drivers/usb/serial/option.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
index de59fa9..9c2039e 100644
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -253,6 +253,7 @@ static void option_instat_callback(struct urb *urb);
#define QUECTEL_PRODUCT_BG96 0x0296
#define QUECTEL_PRODUCT_EP06 0x0306
#define QUECTEL_PRODUCT_EM05G 0x030a
+#define QUECTEL_PRODUCT_EM060K 0x030b
#define QUECTEL_PRODUCT_EM12 0x0512
#define QUECTEL_PRODUCT_RM500Q 0x0800
#define QUECTEL_PRODUCT_EC200S_CN 0x6002
@@ -1138,6 +1139,9 @@ static const struct usb_device_id option_ids[] = {
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EP06, 0xff, 0, 0) },
{ USB_DEVICE_INTERFACE_CLASS(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM05G, 0xff),
.driver_info = RSVD(6) | ZLP },
+ { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM060K, 0xff, 0xff, 0x40) },
+ { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM060K, 0xff, 0xff, 0x30) },
+ { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM060K, 0xff, 0, 0x40) },
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM12, 0xff, 0xff, 0xff),
.driver_info = RSVD(1) | RSVD(2) | RSVD(3) | RSVD(4) | NUMEP2 },
{ USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM12, 0xff, 0, 0) },
--
2.7.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] USB: serial: option: add Quectel EM060K modem
2022-07-19 11:28 [PATCH] USB: serial: option: add Quectel EM060K modem Yonglin Tan
@ 2022-07-24 8:41 ` Johan Hovold
2022-07-30 7:32 ` 回复: " 谭 永林
2022-08-29 13:17 ` Johan Hovold
1 sibling, 1 reply; 6+ messages in thread
From: Johan Hovold @ 2022-07-24 8:41 UTC (permalink / raw)
To: Yonglin Tan; +Cc: gregkh, linux-usb, linux-kernel
On Tue, Jul 19, 2022 at 07:28:00PM +0800, Yonglin Tan wrote:
> Add usb product id entry for the Quectel EM060K module.
>
> "MBIM mode": DIAG + NMEA + AT + MODEM + MBIM
>
> T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 8 Spd=480 MxCh= 0
> D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
> P: Vendor=2c7c ProdID=030b Rev= 5.04
> S: Manufacturer=Quectel
> S: Product=EM060K-GL
> S: SerialNumber=89fb57db
> C:* #Ifs= 7 Cfg#= 1 Atr=a0 MxPwr=500mA
> A: FirstIf#= 8 IfCount= 2 Cls=02(comm.) Sub=0e Prot=00
> I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option
> E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=40 Driver=option
> E: Ad=83(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
> E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=option
> E: Ad=85(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
> E: Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=option
> E: Ad=87(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
> E: Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 8 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0e Prot=00 Driver=cdc_mbim
> E: Ad=88(I) Atr=03(Int.) MxPS= 64 Ivl=32ms
> I: If#= 9 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim
> I:* If#= 9 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim
> E: Ad=8e(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E: Ad=0f(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#=12 Alt= 0 #EPs= 1 Cls=ff(vend.) Sub=ff Prot=70 Driver=(none)
> E: Ad=89(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
What's this last interface used for?
Johan
^ permalink raw reply [flat|nested] 6+ messages in thread
* 回复: [PATCH] USB: serial: option: add Quectel EM060K modem
2022-07-24 8:41 ` Johan Hovold
@ 2022-07-30 7:32 ` 谭 永林
2022-08-03 8:20 ` Johan Hovold
0 siblings, 1 reply; 6+ messages in thread
From: 谭 永林 @ 2022-07-30 7:32 UTC (permalink / raw)
To: Johan Hovold; +Cc: gregkh, linux-usb, linux-kernel
Dear Johan,
The last interface is used for Qualcomm WWAN module's QDSS(Qualcomm Debug Sub-System) port. Users use the QDSS interface to acquire Modem subsystem log. It is used to work with DIAG port. Therefore, we don't have to bind this interface with any driver.
-----邮件原件-----
发件人: Johan Hovold <johan@kernel.org>
发送时间: 2022年7月24日 16:41
收件人: Yonglin Tan <yonglin.tan@outlook.com>
抄送: gregkh@linuxfoundation.org; linux-usb@vger.kernel.org; linux-kernel@vger.kernel.org
主题: Re: [PATCH] USB: serial: option: add Quectel EM060K modem
On Tue, Jul 19, 2022 at 07:28:00PM +0800, Yonglin Tan wrote:
> Add usb product id entry for the Quectel EM060K module.
>
> "MBIM mode": DIAG + NMEA + AT + MODEM + MBIM
>
> T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 8 Spd=480 MxCh= 0
> D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
> P: Vendor=2c7c ProdID=030b Rev= 5.04
> S: Manufacturer=Quectel
> S: Product=EM060K-GL
> S: SerialNumber=89fb57db
> C:* #Ifs= 7 Cfg#= 1 Atr=a0 MxPwr=500mA
> A: FirstIf#= 8 IfCount= 2 Cls=02(comm.) Sub=0e Prot=00
> I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option
> E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=40 Driver=option
> E: Ad=83(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
> E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=option
> E: Ad=85(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
> E: Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=option
> E: Ad=87(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
> E: Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 8 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0e Prot=00 Driver=cdc_mbim
> E: Ad=88(I) Atr=03(Int.) MxPS= 64 Ivl=32ms
> I: If#= 9 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim
> I:* If#= 9 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim
> E: Ad=8e(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E: Ad=0f(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#=12 Alt= 0 #EPs= 1 Cls=ff(vend.) Sub=ff Prot=70 Driver=(none)
> E: Ad=89(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
What's this last interface used for?
Johan
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: 回复: [PATCH] USB: serial: option: add Quectel EM060K modem
2022-07-30 7:32 ` 回复: " 谭 永林
@ 2022-08-03 8:20 ` Johan Hovold
2022-08-08 6:38 ` 回复: " 谭 永林
0 siblings, 1 reply; 6+ messages in thread
From: Johan Hovold @ 2022-08-03 8:20 UTC (permalink / raw)
To: 谭 永林; +Cc: gregkh, linux-usb, linux-kernel
On Sat, Jul 30, 2022 at 07:32:47AM +0000, 谭 永林 wrote:
> The last interface is used for Qualcomm WWAN module's QDSS(Qualcomm
> Debug Sub-System) port. Users use the QDSS interface to acquire Modem
> subsystem log. It is used to work with DIAG port. Therefore, we don't
> have to bind this interface with any driver.
Thanks for the details (I can add QDSS to the summary of the interface
layout in the commit message when applying).
But are you saying that it's not needed because that data is available
also over the DIAG port? Or is there some libusb driver that should be
used to access the QDSS port?
Johan
^ permalink raw reply [flat|nested] 6+ messages in thread
* 回复: 回复: [PATCH] USB: serial: option: add Quectel EM060K modem
2022-08-03 8:20 ` Johan Hovold
@ 2022-08-08 6:38 ` 谭 永林
0 siblings, 0 replies; 6+ messages in thread
From: 谭 永林 @ 2022-08-08 6:38 UTC (permalink / raw)
To: Johan Hovold; +Cc: gregkh, linux-usb, linux-kernel
Dear Johan,
The QDSS port only be used for capturing modem's log. The user application acquires the modem's log by accessing the BULK_IN EP. And no other operation requirements on this interface.
Best Regards.
-----邮件原件-----
发件人: Johan Hovold <johan@kernel.org>
发送时间: 2022年8月3日 16:20
收件人: 谭 永林 <yonglin.tan@outlook.com>
抄送: gregkh@linuxfoundation.org; linux-usb@vger.kernel.org; linux-kernel@vger.kernel.org
主题: Re: 回复: [PATCH] USB: serial: option: add Quectel EM060K modem
On Sat, Jul 30, 2022 at 07:32:47AM +0000, 谭 永林 wrote:
> The last interface is used for Qualcomm WWAN module's QDSS(Qualcomm
> Debug Sub-System) port. Users use the QDSS interface to acquire Modem
> subsystem log. It is used to work with DIAG port. Therefore, we don't
> have to bind this interface with any driver.
Thanks for the details (I can add QDSS to the summary of the interface layout in the commit message when applying).
But are you saying that it's not needed because that data is available also over the DIAG port? Or is there some libusb driver that should be used to access the QDSS port?
Johan
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] USB: serial: option: add Quectel EM060K modem
2022-07-19 11:28 [PATCH] USB: serial: option: add Quectel EM060K modem Yonglin Tan
2022-07-24 8:41 ` Johan Hovold
@ 2022-08-29 13:17 ` Johan Hovold
1 sibling, 0 replies; 6+ messages in thread
From: Johan Hovold @ 2022-08-29 13:17 UTC (permalink / raw)
To: Yonglin Tan; +Cc: gregkh, linux-usb, linux-kernel
On Tue, Jul 19, 2022 at 07:28:00PM +0800, Yonglin Tan wrote:
> Add usb product id entry for the Quectel EM060K module.
>
> "MBIM mode": DIAG + NMEA + AT + MODEM + MBIM
> Signed-off-by: Yonglin Tan <yonglin.tan@outlook.com>
Now applied with an added comment about the QDSS interface and the
id-entries sorted.
Johan
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-08-29 13:21 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-19 11:28 [PATCH] USB: serial: option: add Quectel EM060K modem Yonglin Tan
2022-07-24 8:41 ` Johan Hovold
2022-07-30 7:32 ` 回复: " 谭 永林
2022-08-03 8:20 ` Johan Hovold
2022-08-08 6:38 ` 回复: " 谭 永林
2022-08-29 13:17 ` 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.