Received: by 10.192.165.148 with SMTP id m20csp1929470imm; Thu, 26 Apr 2018 04:20:56 -0700 (PDT) X-Google-Smtp-Source: AIpwx4+B6D4k1E2k6ZkkgY86Is667gdkk5HeRII+zmnPh/yol1vFZSQE1ddPH4pkGDawvtNMUQVp X-Received: by 2002:a17:902:1665:: with SMTP id g92-v6mr33737553plg.195.1524741656652; Thu, 26 Apr 2018 04:20:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1524741656; cv=none; d=google.com; s=arc-20160816; b=aTrimfoeD0lkHV5NsHqiOCAyAImBb9lvcmXmPXvs+wA6pH0uqfNWJKH+HgKlja5MCf kQPatRtdl/5ITI1aIe4VGRacgl5lvt2pAXogyG/CNh93hnXZ5PP9Z37fFOhIC9oBz/y1 JUXQmS6k7oXmzt1aNIbaSeEn9+eSbxhqreuf/s6X9csXaW/y85kaSXKDumntWGJcHvP/ 2TLa2q3ELZXaLy6IAlmyy49Z80Z3D2HVU3IErdTHLTcLKreIWTsS2rGRzP0fMQsF0CpZ xHzVmtvyX53q+pkWxqUKwkjvavrh5GSmT/4s2ZmmUsgSKR9dncs7MY18X1oU35brDnI1 4LQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:message-id:in-reply-to:date:references:organization :subject:cc:to:from:dkim-signature:arc-authentication-results; bh=v1bhU104QImuXenXDpQTPPUqTPqnmxX37Bzw1EExY1s=; b=uAZEazO5os20/B+UuvJS91A3wsDfQ/ldNe88Ez7h2ga51lyTnk4i7TBQv15xoqlymE FBN7mnuq6bGsiozXmkHhiBtpYjUJ+MXzpFIuq/T19aOhiN0jEMpAb6Re3Fd22xXsuv9N k4lwK8LUJNB2dPbPA2miVRa4V1T1BRSjWMXRCOz1aLhTmrtDMfFoZiGzrdsgSZjTXpHQ y8OZxNj/a4cxp1XMsfS86+j5phYIN/VvE6ghfzB1qzyCABrYfNmZ6tsyMpckDloU2zQK zWxO1cAVzbFnCCoN84m1jpLcCv5mFH+pjwat+GVIcrwh1e7D+HwOiJJKMjSUDSML/Nia 0/Yg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mork.no header.s=b header.b=fa+10wR7; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i35-v6si17718159plg.504.2018.04.26.04.20.42; Thu, 26 Apr 2018 04:20:56 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@mork.no header.s=b header.b=fa+10wR7; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755477AbeDZLTk (ORCPT + 99 others); Thu, 26 Apr 2018 07:19:40 -0400 Received: from canardo.mork.no ([148.122.252.1]:48831 "EHLO canardo.mork.no" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754295AbeDZLTi (ORCPT ); Thu, 26 Apr 2018 07:19:38 -0400 Received: from miraculix.mork.no ([IPv6:2a02:2121:2c3:6ce4:3458:5eff:fea9:6259]) (authenticated bits=0) by canardo.mork.no (8.15.2/8.15.2) with ESMTPSA id w3QBJMpl001791 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Thu, 26 Apr 2018 13:19:23 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mork.no; s=b; t=1524741564; bh=v1bhU104QImuXenXDpQTPPUqTPqnmxX37Bzw1EExY1s=; h=From:To:Cc:Subject:References:Date:Message-ID:From; b=fa+10wR7E2W1oxYHoreZdKReRIJCVlroyk5pD8dGMRDSugirFoI43dbWNsl+W/d19 VOHeWB8ClTJEAl8Z+dk+kUfxaSIDGL1ihu2nkpwYg6ShZ5QurA1YybfLFz9zjjfhMP +tmWwLg04Q8J35bjeT7cW40wSdGwVhzVdiRz5RTg= Received: from bjorn by miraculix.mork.no with local (Exim 4.89) (envelope-from ) id 1fBevl-0007RI-4q; Thu, 26 Apr 2018 13:19:17 +0200 From: =?utf-8?Q?Bj=C3=B8rn_Mork?= To: Johan Hovold Cc: Lars Melin , SZ Lin =?utf-8?B?KOael+S4iuaZuik=?= , stable , Greg Kroah-Hartman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Dan Williams Subject: Re: [PATCH] USB: serial: option: adding support for ublox R410M Organization: m References: <20180426062831.320-1-sz.lin@moxa.com> <20180426070927.GT4615@localhost> <72c63853-aa2d-e74c-1112-36d54ef52a85@gmail.com> <20180426081403.GA335@localhost> Date: Thu, 26 Apr 2018 13:19:17 +0200 In-Reply-To: <20180426081403.GA335@localhost> (Johan Hovold's message of "Thu, 26 Apr 2018 10:14:03 +0200") Message-ID: <87r2n25i6i.fsf@miraculix.mork.no> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Virus-Scanned: clamav-milter 0.99.3 at canardo X-Virus-Status: Clean Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Johan Hovold writes: > On Thu, Apr 26, 2018 at 02:48:54PM +0700, Lars Melin wrote: >> On 4/26/2018 14:09, Johan Hovold wrote: >> > On Thu, Apr 26, 2018 at 02:28:31PM +0800, SZ Lin (=E6=9E=97=E4=B8=8A= =E6=99=BA) wrote: >> >> This patch adds support for ublox R410M PID 0x90b2 USB modem to option >> >> driver, this module supports LTE Cat M1 / NB1. >> >> >> >> Interface layout: >> >> 0: QCDM/DIAG >> >> 1: ADB >> >> 2: AT >> >> 3: RMNET >> >> >> >> Signed-off-by: SZ Lin (=E6=9E=97=E4=B8=8A=E6=99=BA) >> >> Cc: stable >> >=20 >> > Applied, thanks. >> >=20 >> > Johan >>=20 >> With a Qualcomm Device Management interface, shouldn't this modem be=20 >> driven by qcserial? > > Hmm, we already have some QCDM interfaces handled by option and qcaux so > it's not that clear-cut. > > Dan and Bj=C3=B6rn had a discussion about this a while back, so adding th= em > on CC. It seems to me that this device does not fit the intended use (or > Gobi 1000 layout) for qcserial, but I may be mistaken. tl;dr; I don't think qcserial is relevant unless a device matches one of the pre-defined layout schemes. But I'm too new in this game to say anything about the initial intentions...=20 My view of the present situation is that qcserial handles interface layouts shared among many devices, while option handles interface layouts which are unique per device, and vendor+class based function mappings. But I could be wrong. Anyway, Qualcomm based designs are definitely handled by both drivers. Using qcserial only makes sense if the interface layout matches one of the defined shared schemes, which currently are: QCSERIAL_G2K =3D 0, /* Gobi 2000 */ QCSERIAL_G1K =3D 1, /* Gobi 1000 */ QCSERIAL_SWI =3D 2, /* Sierra Wireless */ QCSERIAL_HWI =3D 3, /* Huawei */ or if similar logic is added for a new vendor/shceme And I see multi-vendor-id usage as the main reason for these schemes. There isn't much reason if you can make it a single match against a vendor-id. The original Gobi devices are obviously multi-vendor, and Sierra Wireless and Huwaei are OEMs making devices for a number of laptop vendors. This causes traditional vendor-id matching to fail, as e.g. a HP device can be made by either OEMs (or others). qcserial has become a convenient way to map a long list of full device IDs to a specific OEM layout. Bj=C3=B8rn