[PATCH 3.2 092/185] usb: gadget: composite: reset delayed_statuson reset_config

From: Ben Hutchings
Date: Sat Dec 28 2013 - 21:10:59 EST

3.2.54-rc1 review patch. If anyone has any objections, please let me know.


From: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx>

commit 2bac51a1827a18821150ed8c9f9752c02f9c2b02 upstream.

The delayed_status value is used to keep track of status response
packets on ep0. It needs to be reset or the set_config function would
still delay the answer, if the usb device got unplugged while waiting
for setup_continue to be called.

Signed-off-by: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx>
Signed-off-by: Felipe Balbi <balbi@xxxxxx>
Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
drivers/usb/gadget/composite.c | 1 +
1 file changed, 1 insertion(+)

--- a/drivers/usb/gadget/composite.c
+++ b/drivers/usb/gadget/composite.c
@@ -585,6 +585,7 @@ static void reset_config(struct usb_comp
bitmap_zero(f->endpoints, 32);
cdev->config = NULL;
+ cdev->delayed_status = 0;

static int set_config(struct usb_composite_dev *cdev,

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/