diff options
author | glei <glei@nvidia.com> | 2014-01-24 17:33:26 +0800 |
---|---|---|
committer | Martin Chi <mchi@nvidia.com> | 2014-01-27 00:20:10 -0800 |
commit | 3e11a6c957340ae770252923bd8a9878b3877b3e (patch) | |
tree | 96323c95ae630cad71e0a1bcec426379c7bd9546 | |
parent | a6f804e4177ab870fe68d8f989b82afdc25e9f83 (diff) |
usb: acm: No hangup for Bruce during reset resume.
Set NO_HANGUP_IN_RESET_RESUME flag to Bruce model to
prevent tty hangup during reset resume procedure.
Bug 1446181
Change-Id: I3866e49e8c36ec8627791cd63a237b3bca63e0b9
Signed-off-by: glei <glei@nvidia.com>
Reviewed-on: http://git-master/r/359777
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Martin Chi <mchi@nvidia.com>
-rw-r--r-- | drivers/usb/class/cdc-acm.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c index 626a9a0d0547..8dd9d94e26a7 100644 --- a/drivers/usb/class/cdc-acm.c +++ b/drivers/usb/class/cdc-acm.c @@ -1723,8 +1723,11 @@ static int acm_reset_resume(struct usb_interface *intf) if (test_bit(ASYNCB_INITIALIZED, &acm->port.flags)) { tty = tty_port_tty_get(&acm->port); if (tty) { - if (!acm->no_hangup_in_reset_resume) + if (!acm->no_hangup_in_reset_resume) { + pr_info("%s: tty(%d) hangup due to reset resume.\n", + __func__, tty->index); tty_hangup(tty); + } tty_kref_put(tty); } } @@ -1913,6 +1916,11 @@ static const struct usb_device_id acm_ids[] = { .driver_info = NO_HANGUP_IN_RESET_RESUME, }, + /* Icera 500 - Bruce */ + { USB_DEVICE(0x1983, 0x1007), + .driver_info = NO_HANGUP_IN_RESET_RESUME, + }, + /* control interfaces without any protocol set */ { USB_INTERFACE_INFO(USB_CLASS_COMM, USB_CDC_SUBCLASS_ACM, USB_CDC_PROTO_NONE) }, |