From: Enrico Scholz <enrico.scholz@xxxxxxxxxxxxxxxxx> Fixes bookkeeping in composite driver. Signed-off-by: Enrico Scholz <enrico.scholz@xxxxxxxxxxxxxxxxx> --- drivers/usb/gadget/function/dfu.c | 2 +- drivers/usb/gadget/function/f_acm.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/usb/gadget/function/dfu.c b/drivers/usb/gadget/function/dfu.c index 3a6d2cf385b1..a41ff22dcebc 100644 --- a/drivers/usb/gadget/function/dfu.c +++ b/drivers/usb/gadget/function/dfu.c @@ -807,7 +807,7 @@ static int dfu_setup(struct usb_function *f, const struct usb_ctrlrequest *ctrl) if (value >= 0) { req->zero = 0; req->length = value; - value = usb_ep_queue(cdev->gadget->ep0, req); + value = composite_queue_setup_request(cdev); if (value < 0) ERROR(cdev, "dfu response on ttyGS%d, err %d\n", dfu->port_num, value); diff --git a/drivers/usb/gadget/function/f_acm.c b/drivers/usb/gadget/function/f_acm.c index 3532fd589274..7fa0a4358fe6 100644 --- a/drivers/usb/gadget/function/f_acm.c +++ b/drivers/usb/gadget/function/f_acm.c @@ -309,6 +309,8 @@ static void acm_complete_set_line_coding(struct usb_ep *ep, struct f_acm *acm = ep->driver_data; struct usb_composite_dev *cdev = acm->port.func.config->cdev; + composite_setup_complete(ep, req); + if (req->status != 0) { DBG(cdev, "acm ttyGS%d completion, err %d\n", acm->port_num, req->status); @@ -406,7 +408,7 @@ static int acm_setup(struct usb_function *f, const struct usb_ctrlrequest *ctrl) w_value, w_index, w_length); req->zero = 0; req->length = value; - value = usb_ep_queue(cdev->gadget->ep0, req); + value = composite_queue_setup_request(cdev); if (value < 0) ERROR(cdev, "acm response on ttyGS%d, err %d\n", acm->port_num, value); -- 2.45.0