summaryrefslogtreecommitdiff
path: root/drivers/usb
diff options
context:
space:
mode:
authorSeshendra Gadagottu <sgadagottu@nvidia.com>2012-02-09 09:33:20 +0530
committerSimone Willett <swillett@nvidia.com>2012-03-05 17:41:25 -0800
commit48a177ef87aeafc913e7e7e1eeb6a74c9636628f (patch)
treed9edd29c6dd8ce1c41243c5098082e021d63ed55 /drivers/usb
parent4454d77bc84584d9bcce09ca81a7ea681a09eda4 (diff)
arm : tegra : comm: AT command loss WAR
Workaround to avoid make cdc-acm susp_count to negative. Bug 935834 Change-Id: I251049537e21662de329f11ecbad0ce15abb1037 Signed-off-by: Seshendra Gadagottu<sgadagottu@nvidia.com> Reviewed-on: http://git-master/r/84288 (cherry picked from commit d056c04d453bc641e856a61251e7d0aa2dcce73b) Reviewed-on: http://git-master/r/87505 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/class/cdc-acm.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c
index 7a37bf93b65e..a06f2cdc6106 100644
--- a/drivers/usb/class/cdc-acm.c
+++ b/drivers/usb/class/cdc-acm.c
@@ -1405,8 +1405,13 @@ static int acm_resume(struct usb_interface *intf)
}
spin_lock_irq(&acm->read_lock);
- acm->susp_count -= 1;
- cnt = acm->susp_count;
+ if (acm->susp_count > 0) {
+ acm->susp_count -= 1;
+ cnt = acm->susp_count;
+ } else {
+ spin_unlock_irq(&acm->read_lock);
+ return 0;
+ }
spin_unlock_irq(&acm->read_lock);
if (cnt)