lkml.org 
[lkml]   [2015]   [Mar]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3.16.y-ckt 148/165] cdc-acm: Add support for Denso cradle CU-321
    Date
    3.16.7-ckt9 -stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: =?UTF-8?q?Bj=C3=B6rn=20Gerhart?= <oss@airbjorn.de>

    commit b20b1618b8fca858c83e52da4aa22cd6b13b0359 upstream.

    In order to support an older USB cradle by Denso, I added its vendor- and product-ID to the array of usb_device_id acm_ids. In this way cdc-acm feels responsible for this cradle. The related /dev/ttyACM node is being created properly, and the data transfer works.

    However, later cradle models by Denso do have proper descriptors, so the patch is not required for these. At the same time both the older and the later model have the same vendor- and product-ID, but they both work with the patched driver.

    Declaration of the Denso cradles I tested:
    - both models have the same IDs: vendorID 0x076d, productID 0x0006
    - older model: Denso CU-321 (descriptors not properly set)
    - later model: Denso CU-821 (with proper descriptors)

    Signed-off-by: Bjoern Gerhart <oss@airbjorn.de>
    Acked-by: Oliver Neukum <oneukum@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
    ---
    drivers/usb/class/cdc-acm.c | 2 ++
    1 file changed, 2 insertions(+)

    diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c
    index bffb50450132..bc2cacd3cb68 100644
    --- a/drivers/usb/class/cdc-acm.c
    +++ b/drivers/usb/class/cdc-acm.c
    @@ -1662,6 +1662,8 @@ static int acm_reset_resume(struct usb_interface *intf)

    static const struct usb_device_id acm_ids[] = {
    /* quirky and broken devices */
    + { USB_DEVICE(0x076d, 0x0006), /* Denso Cradle CU-321 */
    + .driver_info = NO_UNION_NORMAL, },/* has no union descriptor */
    { USB_DEVICE(0x17ef, 0x7000), /* Lenovo USB modem */
    .driver_info = NO_UNION_NORMAL, },/* has no union descriptor */
    { USB_DEVICE(0x0870, 0x0001), /* Metricom GS Modem */

    \
     
     \ /
      Last update: 2015-03-25 15:41    [W:4.165 / U:0.028 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site