|
@@ -1806,7 +1806,7 @@ static void ffs_func_eps_disable(struct ffs_function *func)
|
|
|
unsigned long flags;
|
|
|
|
|
|
spin_lock_irqsave(&func->ffs->eps_lock, flags);
|
|
|
- do {
|
|
|
+ while (count--) {
|
|
|
/* pending requests get nuked */
|
|
|
if (likely(ep->ep))
|
|
|
usb_ep_disable(ep->ep);
|
|
@@ -1817,7 +1817,7 @@ static void ffs_func_eps_disable(struct ffs_function *func)
|
|
|
__ffs_epfile_read_buffer_free(epfile);
|
|
|
++epfile;
|
|
|
}
|
|
|
- } while (--count);
|
|
|
+ }
|
|
|
spin_unlock_irqrestore(&func->ffs->eps_lock, flags);
|
|
|
}
|
|
|
|
|
@@ -1831,7 +1831,7 @@ static int ffs_func_eps_enable(struct ffs_function *func)
|
|
|
int ret = 0;
|
|
|
|
|
|
spin_lock_irqsave(&func->ffs->eps_lock, flags);
|
|
|
- do {
|
|
|
+ while(count--) {
|
|
|
struct usb_endpoint_descriptor *ds;
|
|
|
int desc_idx;
|
|
|
|
|
@@ -1867,7 +1867,7 @@ static int ffs_func_eps_enable(struct ffs_function *func)
|
|
|
|
|
|
++ep;
|
|
|
++epfile;
|
|
|
- } while (--count);
|
|
|
+ }
|
|
|
spin_unlock_irqrestore(&func->ffs->eps_lock, flags);
|
|
|
|
|
|
return ret;
|
|
@@ -3448,12 +3448,12 @@ static void ffs_func_unbind(struct usb_configuration *c,
|
|
|
|
|
|
/* cleanup after autoconfig */
|
|
|
spin_lock_irqsave(&func->ffs->eps_lock, flags);
|
|
|
- do {
|
|
|
+ while (count--) {
|
|
|
if (ep->ep && ep->req)
|
|
|
usb_ep_free_request(ep->ep, ep->req);
|
|
|
ep->req = NULL;
|
|
|
++ep;
|
|
|
- } while (--count);
|
|
|
+ }
|
|
|
spin_unlock_irqrestore(&func->ffs->eps_lock, flags);
|
|
|
kfree(func->eps);
|
|
|
func->eps = NULL;
|