From patchwork Fri Sep 2 09:49:43 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?b?Q2FybCBZaW4o5q635byg5oiQKQ==?= X-Patchwork-Id: 602622 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B24F5C38145 for ; Fri, 2 Sep 2022 09:50:01 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235723AbiIBJt7 (ORCPT ); Fri, 2 Sep 2022 05:49:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50074 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235781AbiIBJts (ORCPT ); Fri, 2 Sep 2022 05:49:48 -0400 Received: from APC01-PSA-obe.outbound.protection.outlook.com (mail-psaapc01on2076.outbound.protection.outlook.com [40.107.255.76]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 70647332; Fri, 2 Sep 2022 02:49:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JLi2MBhgVO788UYgzbUEMeILmeJipXVa3DeRwFx/7Gy4UMG506rLU7j2fIs63FMdi7tswjWQciHyH2+K85cmTf0RHKyB1vFXlYM2Hl/DcAYcATN5D68K0UrIanmOS34Qr3OxKrCVTYDcnvOeus7r2K6gIoKvUraOxm8T47kfdW3vD+61BIH11PGa4n7bgToeU0wtHAkVuTaMO7MIbX5tw34QFVFbR265Vs4yQTIrJm2aHGcIEkfJIq4YR9k9i4QzaR83Fi7BOudgV9Y9eh4oxmQULPzkWnM8gyft1Hfq1pCqOU0qmsuXHhK0w42z+b1xAjEijrBrG7upUN909AdpbA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Az/KyCHM8SGVNkkTKIHAdNr6soAaYyTipKp/xZs2Yy0=; b=DfC4Xl20TibzwT6alHuqwF1QPJYXljrpFoq9al1D+1Z8+KVC4lCEwBUJmB1lbeKOBuatn86/JJFy1g/RlXAtDuD/FKWTEJV7lssWPNDMSM9nreqiobjBB82KPRd77QFbFjsjXaFvgTP31q2Fg8clu0UXqnOBlFbGEHAqTAC0o19tWRD0NmZfb3g9FZj+vDaK5chJnRd6jrB7fZdYm32+uapUs1Vy0BvAPyqN19QDwNnlGC/wJ+nN1qEGMp0CiH56ytTCWe3G+uXrDTQ0z8Cr/fY1e5AkXlWn7Yhl3Sv4XFpUwO/zInnofEksr/NcO4m7b7Tf97TPP2PYNMBNuOxm+g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=quectel.com; dmarc=pass action=none header.from=quectel.com; dkim=pass header.d=quectel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quectel.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Az/KyCHM8SGVNkkTKIHAdNr6soAaYyTipKp/xZs2Yy0=; b=DK3fYCvoor4FBVkHyeRD/sIFPXK67lhrlVI8kI//HlT2lV0ccJ1UA7uQcTd12E5voB62L2hVr49n2/T/lV7TVCJsqonuDcenRdaOP4pdtHkOpqExW2wtOO14XBrz4kWICJvs4SA8lb8898VQS7ONVEbQ8QNTW5NBzCjbvGJQMWA= Received: from TYZPR06MB4270.apcprd06.prod.outlook.com (2603:1096:400:88::6) by TYZPR06MB5275.apcprd06.prod.outlook.com (2603:1096:400:1f5::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5588.12; Fri, 2 Sep 2022 09:49:44 +0000 Received: from TYZPR06MB4270.apcprd06.prod.outlook.com ([fe80::1007:6113:773f:aedb]) by TYZPR06MB4270.apcprd06.prod.outlook.com ([fe80::1007:6113:773f:aedb%6]) with mapi id 15.20.5588.014; Fri, 2 Sep 2022 09:49:44 +0000 From: =?eucgb2312_cn?b?Q2FybCBZaW4o0vPVxbPJKQ==?= To: "johan@kernel.org" CC: "gregkh@linuxfoundation.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: [PATCH] USB: serial: option: add Quectel BG95 0x0203 composition Thread-Topic: [PATCH] USB: serial: option: add Quectel BG95 0x0203 composition Thread-Index: Adi+sVOUd8AzbqSrRfe/bG1vrBqBhw== Date: Fri, 2 Sep 2022 09:49:43 +0000 Message-ID: Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=quectel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 66c9c5f9-260f-4aaa-5eea-08da8cc876cb x-ms-traffictypediagnostic: TYZPR06MB5275:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: TwSZhASTWHwdk++DHuCfhZKdWJZwVImQIAMh8bWCVyHTiX5swwffZZatSgVoDnOeIVUspuG6BcOZF52aiPHxVIzyTStJcuUFGKt1A0mavwJ7FpK+kl0AkBEonYPkxMzYn2uNGfc9J5vIngDXPZA9cwygqSUhxw6gJYhJAW1imSDfe/6fpYxpUIk6EZsLb6nE9G3CbI63+eMiUnOtEREiomzlgTbbI+Np7GVQNeuZ+jO7nGNR+9ytK0Ii9Gxp+umj8Khw+XYyIN02+et2gVy3ylylehTQN2Ut3nMoHzkJnLpDndKapRm+Dfj01AQRQDIebQJN3RHnAN7iX1F0SCeNHUmDVBqxPG1emeKlJhiwijQ/a9zCI/q4inh7Y5jmt3FQHOGdzP3xY31OHsxzhjSaYn7W7VlLKBCzRibOivlI6YsmsGgctRjJUnIhlSGqRwc6xmkcVD1TXin5Z77TOfrCzdfE7Al3LShrXFOwDdjGKMDfd2te+0wpkNjlF0U3lpNx/9qfhtpkyVGXSSQVS9let3VJI2Y/C76cjFPAQYkVNnngQI1hEE4AwSGQu5tdprRaPNEN6Y4Iy3JxRlVIS8qpK84YzZZnODEDpiAvIORubwAT2wUHD3OC7zcNHPITa2/igBlxQ0Zfo+fsr4ackOfOuTuVBglr19MMo2Lkn6n1WpZc/XRxy+8slTP3TtT3y9HxqfXcdgK47UMItuZHjqQf2fyAGAe/qVdw0A1I8L9FstVJwsU8mlT1KXvq0eZM6VYo5RtS9jIuXN+bJSpDWxMJ/g== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYZPR06MB4270.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(366004)(396003)(136003)(346002)(39860400002)(376002)(9686003)(26005)(186003)(71200400001)(7696005)(6506007)(8936002)(5660300002)(52536014)(33656002)(41300700001)(85182001)(478600001)(86362001)(316002)(38070700005)(54906003)(38100700002)(2906002)(122000001)(6916009)(76116006)(4326008)(8676002)(64756008)(66446008)(66476007)(66556008)(66946007)(55016003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?eucgb2312_cn?b?U2J2NW1pOHRZRnY1cjM0V1dw?= =?eucgb2312_cn?b?cm1HTG12T3hBSnZxSnVEUjRETWZGUUlaVzhTVkJ2SE9DNE9VZTZZVlRpYThBcUha?= =?eucgb2312_cn?b?T09oYW5oeis0Yk5FclV6a1RvS2ZmMG8xZTh2S0t3UngrSkF5S2kvVDJoaW5tQU96?= =?eucgb2312_cn?b?SWRaV1NlUlRjcnBkNmJLdlFLT29ZVWREaGlDRnNwek0xMktwREF6Y1d0bjNxaG1n?= =?eucgb2312_cn?b?S0FWc2hXempCbEgycHVsbndMRVhxbWRrVkx4eStqUm5mME0vVXdHNGRSd0xhZnFr?= =?eucgb2312_cn?b?OGpBLzVPLzN4cFIwT0gybGkvbjNoR0pXOW5Ieml4SlMvam5BMFpBRXozRU5jUzAz?= =?eucgb2312_cn?b?VUN1RzhQeVpwMGFPcm95QXFva3hwazl1bnB4NndHbWJ4MXpQM0dSWjhnYWVoQ0xy?= =?eucgb2312_cn?b?NmRhcStldE14K1RuaTJZWVVFUGQ5NFJHaUtOYlJMWmEwK0EvbjJCcDN2NmtBcFZQ?= =?eucgb2312_cn?b?MmNKN3htTDNnT0grTjhpMzZNMXVvY0h1cVNWeTVoa1ZISXUwa3Jva3BScnJTSTdX?= =?eucgb2312_cn?b?TzNseWlRQTdZQTdHVTFIejUrZ0EvM2wycDF2aDZpdFNTNEphUTR3eXpmOHJUaGpy?= =?eucgb2312_cn?b?aENEMTFNSlFWUVZJUnh3bk4yUXNZckZzNVlVNEpRRjVhQ1FoZmNJck1Jb2pML1dG?= =?eucgb2312_cn?b?RXRZQ0FuVXdwZk9McHJuWXEvVW9NTmVwUnI5NmpscUtVZmNMakFZU0dSZ2V4TUNi?= =?eucgb2312_cn?b?WW5DdHF1NDhrbHRSUGlJTitpdW1QdmRvWjNlV0ZxQzdjblFoT0ZNZHNjRFY3dWFw?= =?eucgb2312_cn?b?Q0lOU2lucHp2M25aVTZiZnpTaWhQOThaclFrQmRUOHNBUUI5VG5rNmxVWGVxU3d6?= =?eucgb2312_cn?b?NUErZGptZUVrWXBUckxiVWVqZEJCYlJtRGhnNTJGWHRBQzZocEQ5WkNQS2xEOGQy?= =?eucgb2312_cn?b?N1MvZnFTb0x5TjBxRXpuRUMwaEZxUTlZV0lMYllRZUZVZmVnSm9kYncxRCtKb0h6?= =?eucgb2312_cn?b?RUl5NjI5RHJsVnNpY2RUbzNkUVRkdDJ6WnlGY2RCY09uaVFwdmRDSy80Wmx2dm5Q?= =?eucgb2312_cn?b?SHkwZENXbjVYS1RRODdhRVAvZCt1NHJPaFlxaSt1dk0yVDNMd01nbmRpTmRmWUdH?= =?eucgb2312_cn?b?Qzh4T3ZMeUFEYXQ5Y0JtSnRRRkRlcS9VZkUrWisxMFZhdzJNbm1lRTV4aVg2OTMx?= =?eucgb2312_cn?b?TVlCZHE3R09YYUI2SWxURFRIV0Y3dXJxd2xSZldWOTAyTVNxcXphei9qazB6WWVy?= =?eucgb2312_cn?b?RTRQN2VrVUdRSzFxSHo2Y3NGZjBhbDRzWk80NjZjbk4xbHNJN2QzK29hMU9rVUo5?= =?eucgb2312_cn?b?S2RrTXlMNk5IVWFQSjhzeDE5WWNSS2VObXpONG9nVGpzYkZUSlk2L2Q0WU9wMW54?= =?eucgb2312_cn?b?RldEVXlSbVA0QmV1WEExK2NrV25DSTUwbExVaUNZUXJQdDNNVks4Kzh1VkxLcnV4?= =?eucgb2312_cn?b?bzZQLzJtTEgwYXp4RkpOemo2VXAxbC9naTlsdnM2MDhvWUsvcU9QM0ZPcFg0bmly?= =?eucgb2312_cn?b?cXdUK3Z3RlJiRElyemdiS0xRUEFrRFhPbysrRzBkNllDRkdyS05BYXE2eE9IWFh1?= =?eucgb2312_cn?b?aGZ4andWRngvakVaU0VxR2xPb1VDTnRXUldxMFVBME44Mk1RZVJMUVEvRmVITVE2?= =?eucgb2312_cn?b?Y0RLb0RuOUVZNk5WYXpwd2F2Y2J5SlZidTh4QnlMLzZOKzYxV0x6ZUd5eW4yTkU1?= =?eucgb2312_cn?b?TUxIb0xSZFdvWW9ERkhPYVlTWVlYUlMyMTBXeXlGc1cwOWpPN3NoRjk0aWVEZXdz?= =?eucgb2312_cn?b?MWVIcFA0RVZhT0ZUSlgyYlF4MHZyOGlqRUh5bWVxZDlRY2pIaGpVQ3BRemlCUVJD?= =?eucgb2312_cn?b?akpIaFY2QXNPY0JsK0hRTXhWc2NiRzBjV1V5OFVDNjR6eGE1YTdmQ1Z1TDlacHN4?= =?eucgb2312_cn?b?eGo3ZXJlMzRYR2ozdHFseVE5Y1dDRkx6d3lIWkRja0k5WnhHZml0TjhhZjR4b0lV?= =?eucgb2312_cn?b?RHRpVWRpVnhxcjlXOXBCSlcrY1pQVW5iaC9CdCtuMXJwT25MYWZ5dU11Mm1WdytH?= =?eucgb2312_cn?b?Y3JGVUxLaCtIQXNuU3pOV0ZhZ2tyaWdIWTRsZlNQdG1uMFVoZnpPdkw3N3pkcURq?= =?eucgb2312_cn?b?bDlDUExjRUJBTWNINGxZTlBKVEROZCtBZEkveDRCOVlQSklISkNhbkxlM25GaA==?= MIME-Version: 1.0 X-OriginatorOrg: quectel.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYZPR06MB4270.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 66c9c5f9-260f-4aaa-5eea-08da8cc876cb X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Sep 2022 09:49:44.0264 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 7730d043-e129-480c-b1ba-e5b6a9f476aa X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: L1ozZpF6iZus3jww3730L1GVTriu3fy26h1VpqPu2pPAcI67Lpao1s7lC/X7gPZl+1zlb+CgPdP4K4iLDhjdRQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYZPR06MB5275 Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org Add support for the following Quectel BG95 composition: 0x0203: Diag + GNSS + Modem + ECM usb-devices output: T: Bus=01 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#= 2 Spd=480 MxCh= 0 D: Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=2c7c ProdID=0203 Rev= 0.00 S: Manufacturer=Quectel, Incorporated S: Product=Quectel LPWA Module S: SerialNumber=71d3a21b C:* #Ifs= 5 Cfg#= 1 Atr=e0 MxPwr=500mA A: FirstIf#= 3 IfCount= 2 Cls=02(comm.) Sub=00 Prot=00 I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=60 Driver=option 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=ff Driver=option E: Ad=83(I) Atr=03(Int.) MxPS= 64 Ivl=2ms 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= 1 Cls=02(comm.) Sub=06 Prot=00 Driver=cdc_ether E: Ad=85(I) Atr=03(Int.) MxPS= 64 Ivl=2ms I: If#= 4 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether I:* If#= 4 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether E: Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms Signed-off-by: Carl Yin --- 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 a5e8374a8..50a9cb079 100644 --- a/drivers/usb/serial/option.c +++ b/drivers/usb/serial/option.c @@ -1138,6 +1138,8 @@ static const struct usb_device_id option_ids[] = { { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EG95, 0xff, 0xff, 0xff), .driver_info = NUMEP2 }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EG95, 0xff, 0, 0) }, + { USB_DEVICE_INTERFACE_CLASS(QUECTEL_VENDOR_ID, 0x0203, 0xff), /* BG95-M3 */ + .driver_info = ZLP }, { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96), .driver_info = RSVD(4) }, { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EP06, 0xff, 0xff, 0xff),