lkml.org 
[lkml]   [2016]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3.16.y-ckt 033/142] USB: option: add support for SIM7100E
    Date
    3.16.7-ckt26 -stable review patch.  If anyone has any objections, please let me know.

    ---8<------------------------------------------------------------

    From: Andrey Skvortsov <andrej.skvortzov@gmail.com>

    commit 3158a8d416f4e1b79dcc867d67cb50013140772c upstream.

    $ lsusb:
    Bus 001 Device 101: ID 1e0e:9001 Qualcomm / Option

    $ usb-devices:
    T: Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#=101 Spd=480 MxCh= 0
    D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 2
    P: Vendor=1e0e ProdID=9001 Rev= 2.32
    S: Manufacturer=SimTech, Incorporated
    S: Product=SimTech, Incorporated
    S: SerialNumber=0123456789ABCDEF
    C:* #Ifs= 7 Cfg#= 1 Atr=80 MxPwr=500mA
    I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
    I:* If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:* If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:* If#= 4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:* If#= 5 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan
    I:* If#= 6 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=42 Prot=01 Driver=(none)

    The last interface (6) is used for Android Composite ADB interface.

    Serial port layout:
    0: QCDM/DIAG
    1: NMEA
    2: AT
    3: AT/PPP
    4: audio

    Signed-off-by: Andrey Skvortsov <andrej.skvortzov@gmail.com>
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
    ---
    drivers/usb/serial/option.c | 7 +++++++
    1 file changed, 7 insertions(+)

    diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
    index 57d38623929d..be60c6758dc0 100644
    --- a/drivers/usb/serial/option.c
    +++ b/drivers/usb/serial/option.c
    @@ -317,6 +317,7 @@ static void option_instat_callback(struct urb *urb);
    #define TOSHIBA_PRODUCT_G450 0x0d45

    #define ALINK_VENDOR_ID 0x1e0e
    +#define SIMCOM_PRODUCT_SIM7100E 0x9001 /* Yes, ALINK_VENDOR_ID */
    #define ALINK_PRODUCT_PH300 0x9100
    #define ALINK_PRODUCT_3GU 0x9200

    @@ -617,6 +618,10 @@ static const struct option_blacklist_info zte_1255_blacklist = {
    .reserved = BIT(3) | BIT(4),
    };

    +static const struct option_blacklist_info simcom_sim7100e_blacklist = {
    + .reserved = BIT(5) | BIT(6),
    +};
    +
    static const struct option_blacklist_info telit_le910_blacklist = {
    .sendsetup = BIT(0),
    .reserved = BIT(1) | BIT(2),
    @@ -1656,6 +1661,8 @@ static const struct usb_device_id option_ids[] = {
    { USB_DEVICE(ALINK_VENDOR_ID, 0x9000) },
    { USB_DEVICE(ALINK_VENDOR_ID, ALINK_PRODUCT_PH300) },
    { USB_DEVICE_AND_INTERFACE_INFO(ALINK_VENDOR_ID, ALINK_PRODUCT_3GU, 0xff, 0xff, 0xff) },
    + { USB_DEVICE(ALINK_VENDOR_ID, SIMCOM_PRODUCT_SIM7100E),
    + .driver_info = (kernel_ulong_t)&simcom_sim7100e_blacklist },
    { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_X060S_X200),
    .driver_info = (kernel_ulong_t)&alcatel_x200_blacklist
    },
    \
     
     \ /
      Last update: 2016-03-22 13:01    [W:3.919 / U:0.136 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site