mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 1/1] USB: serial: option: add TDTECH MT5710-CN
@ 2026-07-08 10:00 Chukun Pan
  2026-07-20 14:15 ` Johan Hovold
  0 siblings, 1 reply; 4+ messages in thread
From: Chukun Pan @ 2026-07-08 10:00 UTC (permalink / raw)
  To: Johan Hovold; +Cc: Greg Kroah-Hartman, linux-kernel, linux-usb, Chukun Pan

Add support for the TDTECH MT5710-CN (5G redcap) module.

T:  Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#=  3 Spd=480  MxCh= 0
D:  Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=3466 ProdID=3301 Rev=ff.ff
S:  Manufacturer=TD Tech Ltd.
S:  Product=TDTECH MT571X
S:  SerialNumber=0123456789ABCDEF
C:* #Ifs= 6 Cfg#= 1 Atr=c0 MxPwr=  0mA
A:  FirstIf#= 0 IfCount= 2 Cls=02(comm.) Sub=0d Prot=00
I:* If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0d Prot=00 Driver=cdc_ncm
E:  Ad=82(I) Atr=03(Int.) MxPS=  16 Ivl=32ms
I:  If#= 1 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=01 Driver=cdc_ncm
I:* If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=01 Driver=cdc_ncm
E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=06 Prot=13 Driver=option
E:  Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 3 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=06 Prot=12 Driver=option
E:  Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 4 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=06 Prot=1c Driver=option
E:  Ad=85(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 5 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=06 Prot=14 Driver=option
E:  Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=05(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms

Interface: ECM / NCM + DIAG + AT + SERIAL + GPS

Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
---
 drivers/usb/serial/option.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
index 7275f4e7f569..5e10af04153b 100644
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -2496,6 +2496,7 @@ static const struct usb_device_id option_ids[] = {
 	  .driver_info = RSVD(5) },
 	{ USB_DEVICE_INTERFACE_CLASS(0x33f8, 0x1003, 0xff),			/* Rolling RW135R-GL (laptop MBIM) */
 	  .driver_info = RSVD(5) },
+	{ USB_DEVICE_INTERFACE_CLASS(0x3466, 0x3301, 0xff) },			/* TDTECH MT5710-CN */
 	{ USB_DEVICE_AND_INTERFACE_INFO(0x3731, 0x0100, 0xff, 0xff, 0x30) },	/* NetPrisma LCUK54-WWD for Global */
 	{ USB_DEVICE_AND_INTERFACE_INFO(0x3731, 0x0100, 0xff, 0x00, 0x40) },
 	{ USB_DEVICE_AND_INTERFACE_INFO(0x3731, 0x0100, 0xff, 0xff, 0x40) },
-- 
2.34.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/1] USB: serial: option: add TDTECH MT5710-CN
  2026-07-08 10:00 [PATCH 1/1] USB: serial: option: add TDTECH MT5710-CN Chukun Pan
@ 2026-07-20 14:15 ` Johan Hovold
  2026-07-21 10:30   ` Chukun Pan
  0 siblings, 1 reply; 4+ messages in thread
From: Johan Hovold @ 2026-07-20 14:15 UTC (permalink / raw)
  To: Chukun Pan; +Cc: Greg Kroah-Hartman, linux-kernel, linux-usb

On Wed, Jul 08, 2026 at 06:00:01PM +0800, Chukun Pan wrote:
> Add support for the TDTECH MT5710-CN (5G redcap) module.
> 
> T:  Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#=  3 Spd=480  MxCh= 0
> D:  Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
> P:  Vendor=3466 ProdID=3301 Rev=ff.ff
> S:  Manufacturer=TD Tech Ltd.
> S:  Product=TDTECH MT571X
> S:  SerialNumber=0123456789ABCDEF
> C:* #Ifs= 6 Cfg#= 1 Atr=c0 MxPwr=  0mA
> A:  FirstIf#= 0 IfCount= 2 Cls=02(comm.) Sub=0d Prot=00
> I:* If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0d Prot=00 Driver=cdc_ncm
> E:  Ad=82(I) Atr=03(Int.) MxPS=  16 Ivl=32ms
> I:  If#= 1 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=01 Driver=cdc_ncm
> I:* If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=01 Driver=cdc_ncm
> E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=06 Prot=13 Driver=option
> E:  Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 3 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=06 Prot=12 Driver=option
> E:  Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E:  Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 4 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=06 Prot=1c Driver=option
> E:  Ad=85(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E:  Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> I:* If#= 5 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=06 Prot=14 Driver=option
> E:  Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> E:  Ad=05(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
> 
> Interface: ECM / NCM + DIAG + AT + SERIAL + GPS
> 
> Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>

Thanks for the patch, looks good.

Do you know which chipset these devices are based on?

Do all interfaces need (and accept) the
USB_CDC_REQ_SET_CONTROL_LINE_STATE request sent on open (unless
suppressed with NCTRL())?

As this looks like a new chipset perhaps we should add a dedicated
tdtech wwan driver for it rather than adding it to option (which has
become a bit of a dumping ground for most devices based on recent
Qualcomm chipsets).

Johan

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/1] USB: serial: option: add TDTECH MT5710-CN
  2026-07-20 14:15 ` Johan Hovold
@ 2026-07-21 10:30   ` Chukun Pan
  2026-07-21 12:51     ` Johan Hovold
  0 siblings, 1 reply; 4+ messages in thread
From: Chukun Pan @ 2026-07-21 10:30 UTC (permalink / raw)
  To: johan; +Cc: amadeus, gregkh, linux-kernel, linux-usb

Hi,

> Do you know which chipset these devices are based on?

It is based on the Huawei HiSilicon Balong chip.

> Do all interfaces need (and accept) the
> USB_CDC_REQ_SET_CONTROL_LINE_STATE request sent on open
> (unless suppressed with NCTRL())?

Sorry, I don't know. Is there any way to verify this?

Thanks,
Chukun

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/1] USB: serial: option: add TDTECH MT5710-CN
  2026-07-21 10:30   ` Chukun Pan
@ 2026-07-21 12:51     ` Johan Hovold
  0 siblings, 0 replies; 4+ messages in thread
From: Johan Hovold @ 2026-07-21 12:51 UTC (permalink / raw)
  To: Chukun Pan; +Cc: gregkh, linux-kernel, linux-usb

On Tue, Jul 21, 2026 at 06:30:00PM +0800, Chukun Pan wrote:

> It is based on the Huawei HiSilicon Balong chip.

Thanks. I'll add that to commit message.

> > Do all interfaces need (and accept) the
> > USB_CDC_REQ_SET_CONTROL_LINE_STATE request sent on open
> > (unless suppressed with NCTRL())?
> 
> Sorry, I don't know. Is there any way to verify this?

There are some device that time out when sending that request on open()
and then you end up with a five second delay. That's likely not the case
here and we don't currently log any errors if the device just rejects
these calls.

If you have the time it would be interesting to know what that
usb_control_msg() in usb_wwan_send_setup() returns for each of the
ports. Just add a dev_info() in there and log it.

But either way, we already have other Huawei devices in the option
driver using similar configurations so I'll just go ahead and merge your
patch.

Johan

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-07-21 12:52 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-07-08 10:00 [PATCH 1/1] USB: serial: option: add TDTECH MT5710-CN Chukun Pan
2026-07-20 14:15 ` Johan Hovold
2026-07-21 10:30   ` Chukun Pan
2026-07-21 12:51     ` Johan Hovold

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®