From nobody Mon Feb 9 08:33:47 2026 Received: from m16.mail.163.com (m16.mail.163.com [220.197.31.5]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E1DE72BD18; Fri, 5 Jul 2024 08:17:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=220.197.31.5 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1720167472; cv=none; b=rRGvibCtfZkG9WEyK5fhwZ241CALRf9BId/CHC5Y5p2U3BuR5L4k0RYryK1N8Mi13gcJV8ZpK0vqyazm3mY4oy7WZqUtNW1jsp6Ezez41hemTaqMp71+oaVKqPfnpabPh+59SrF/1S7QhGzo/B6ja29KaJD1A499gYNHws9tfq0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1720167472; c=relaxed/simple; bh=N62di29Oedf7GoIGih7+uiyJQLoR834Yqg6nabF1rSI=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=cy8nwHu7x1jroX7FkERHKZBvYzI4rcvmzemZFTJm1ugjOFzu3d+hBy61AkHXIcL/64Tcb9P7YCwS17LoY9LizIqhMkFuK4dVTE9YAetVI6BpSHfydfm7hn/li1qaPFIsDz3SUFS29en+JYXT+uN6TA7LQ/1uFgYbRAqq19sUejY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com; spf=pass smtp.mailfrom=163.com; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b=IGrkMXYM; arc=none smtp.client-ip=220.197.31.5 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=163.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=163.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b="IGrkMXYM" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-Id:MIME-Version; bh=bLr8/ EeBth9+HcrumTkeLcx679O6m9o8qb++SNgq8HI=; b=IGrkMXYMUFegPJEDu9jR9 JuXacEhWUT0SPR6zarzhka6C71UtDF4kJIoQLw4u88wZEMFEOqhzdSb2guvleX1b HUsgk2O+3mAgn9vOj5kQj+XfNOvSup8kpkinC3CEPktGKNrWRLOXw8UO8PZwfV4o wfjQMsd+pikzZIQEG24j5w= Received: from localhost.localdomain (unknown [223.104.77.193]) by gzga-smtp-mta-g1-5 (Coremail) with SMTP id _____wD3vwoWrIdmYRHZBg--.27334S2; Fri, 05 Jul 2024 16:17:27 +0800 (CST) From: Slark Xiao To: johan@kernel.org Cc: gregkh@linuxfoundation.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Slark Xiao Subject: [PATCH] USB: serial: option: add support for Foxconn T99W651 Date: Fri, 5 Jul 2024 16:17:09 +0800 Message-Id: <20240705081709.105496-1-slark_xiao@163.com> X-Mailer: git-send-email 2.25.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-CM-TRANSID: _____wD3vwoWrIdmYRHZBg--.27334S2 X-Coremail-Antispam: 1Uf129KBjvJXoWxJr1kCFy3Jr47uF4DAF4Dtwb_yoW8CrW8pF n0yryavrWDWayrXFyDtrn3Zr95uan3K3ySgasrAw4aqFyfZrs7t3sFyFy8XF17Kr4rKrnF vrs0yrWUKF1kJrJanT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x0pRhNVhUUUUU= X-CM-SenderInfo: xvod2y5b0lt0i6rwjhhfrp/1tbiRxkTZGV4KIaf7wAAsq Content-Type: text/plain; charset="utf-8" T99W651 is a RNDIS based modem device. There are 3 serial ports need to be enumerated: Diag, NMEA and AT. Test evidence as below: T: Bus=3D01 Lev=3D02 Prnt=3D02 Port=3D00 Cnt=3D01 Dev#=3D 6 Spd=3D480 MxC= h=3D 0 D: Ver=3D 2.10 Cls=3Def(misc ) Sub=3D02 Prot=3D01 MxPS=3D64 #Cfgs=3D 1 P: Vendor=3D0489 ProdID=3De145 Rev=3D05.15 S: Manufacturer=3DQCOM S: Product=3DSDXPINN-IDP _SN:93B562B2 S: SerialNumber=3D82e6fe26 C: #Ifs=3D 7 Cfg#=3D 1 Atr=3Da0 MxPwr=3D500mA I: If#=3D0x0 Alt=3D 0 #EPs=3D 1 Cls=3Def(misc ) Sub=3D04 Prot=3D01 Driver= =3Drndis_host I: If#=3D0x1 Alt=3D 0 #EPs=3D 2 Cls=3D0a(data ) Sub=3D00 Prot=3D00 Driver= =3Drndis_host I: If#=3D0x2 Alt=3D 0 #EPs=3D 3 Cls=3Dff(vend.) Sub=3Dff Prot=3D40 Driver= =3Doption I: If#=3D0x3 Alt=3D 0 #EPs=3D 3 Cls=3Dff(vend.) Sub=3Dff Prot=3D40 Driver= =3Doption I: If#=3D0x4 Alt=3D 0 #EPs=3D 2 Cls=3Dff(vend.) Sub=3Dff Prot=3D30 Driver= =3Doption I: If#=3D0x5 Alt=3D 0 #EPs=3D 1 Cls=3Dff(vend.) Sub=3Dff Prot=3D70 Driver= =3D(none) I: If#=3D0x6 Alt=3D 0 #EPs=3D 2 Cls=3Dff(vend.) Sub=3D42 Prot=3D01 Driver= =3D(none) 0&1: RNDIS, 2:AT, 3:NMEA, 4:DIAG, 5:QDSS, 6:ADB QDSS is not a serial port. Signed-off-by: Slark Xiao --- drivers/usb/serial/option.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c index 178760bc7b92..4a43cec86db7 100644 --- a/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c @@ -2294,6 +2294,8 @@ static const struct usb_device_id option_ids[] =3D { .driver_info =3D RSVD(3) }, { USB_DEVICE_INTERFACE_CLASS(0x0489, 0xe0f0, 0xff), /* Foxconn T99W373 = MBIM */ .driver_info =3D RSVD(3) }, + { USB_DEVICE_INTERFACE_CLASS(0x0489, 0xe145, 0xff), /* Foxconn T99W651 = RNDIS */ + .driver_info =3D RSVD(5) | RSVD(6) }, { USB_DEVICE(0x1508, 0x1001), /* Fibocom NL668 (IOT version) */ .driver_info =3D RSVD(4) | RSVD(5) | RSVD(6) }, { USB_DEVICE(0x1782, 0x4d10) }, /* Fibocom L610 (AT mode) */ --=20 2.25.1