Re: [PATCH] usb: option: Add ID for Peiker LTE NAD

From: BjÃrn Mork
Date: Tue Nov 04 2014 - 07:41:18 EST


Matthias Klein <matthias.klein@xxxxxxxxx> writes:
> Am 02.11.2014 um 04:35 schrieb Lars Melin:
>> On 2014-11-01 23:01, Matthias Klein wrote:
>>> Add ID of the Peiker LTE NAD for legacy serial interface
>>>
>>> Signed-off-by: Matthias Klein <matthias.klein@xxxxxxxxx>
>>> ---
>>> 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 d1a3f60..d7f1042 100644
>>> --- a/drivers/usb/serial/option.c
>>> +++ b/drivers/usb/serial/option.c
>>> @@ -1091,6 +1091,7 @@ static const struct usb_device_id option_ids[] = {
>>> { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x6613)}, /* Onda H600/ZTE
>>> MF330 */
>>> { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x0023)}, /* ONYX 3G device */
>>> { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x9000)}, /* SIMCom SIM5218 */
>>> + { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x9025)}, /* Peiker LTE NAD */
>>> { USB_DEVICE(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_6001) },
>>> { USB_DEVICE(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_CMU_300) },
>>> { USB_DEVICE(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_6003),
>> 05c6:9025 already has its net interface (#4) supported by the
>> qmi_wwan driver so your patch is wrong.
>> There is also an ADB interface which I don't think should be driven
>> by option.
>>
>>
> The ID is right, and it can be used with the option driver or qmi_wwan.
> Ignore my patch, I will move to qmi_wwan in the future ...

The serial functions should still be supported by the option driver.
Both serial and QMI can be used at the same time, and applications like
ModemManager will take advantage of this.

What you need to to is to make sure the option driver ignores all the
USB interfaces it cannot handle. How to best do that depends on the
descriptors - specifically which class codes they use.

"lsusb -vd 05c6:9025" should tell you more about that.

Assuming that all serial interfaces and the QMI interface all use
ff/ff/ff, while the ADB interface probably use ff/42/01, then something
like this should work:


{ USB_DEVICE_AND_INTERFACE_INFO(QUALCOMM_VENDOR_ID, 0x9025, 0xff, 0xff, 0xff), /* Peiker LTE NAD */
.driver_info = (kernel_ulong_t)&net_intf4_blacklist },



BjÃrn
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/