Merge "usb: gadget: gsi: Fix incorrect repsonse available notifications"

This commit is contained in:
Linux Build Service Account 2017-04-05 20:21:29 -07:00 committed by Gerrit - the friendly Code Review server
commit 38cb972517

View file

@ -1550,13 +1550,6 @@ static void gsi_ctrl_notify_resp_complete(struct usb_ep *ep,
event->bNotificationType, req->status);
/* FALLTHROUGH */
case 0:
/*
* handle multiple pending resp available
* notifications by queuing same until we're done,
* rest of the notification require queuing new
* request.
*/
gsi_ctrl_send_notification(gsi);
break;
}
}
@ -1651,6 +1644,14 @@ static void gsi_ctrl_reset_cmd_complete(struct usb_ep *ep,
gsi_ctrl_send_cpkt_tomodem(gsi, req->buf, 0);
}
static void gsi_ctrl_send_response_complete(struct usb_ep *ep,
struct usb_request *req)
{
struct f_gsi *gsi = req->context;
gsi_ctrl_send_notification(gsi);
}
static int
gsi_setup(struct usb_function *f, const struct usb_ctrlrequest *ctrl)
{
@ -1737,6 +1738,8 @@ gsi_setup(struct usb_function *f, const struct usb_ctrlrequest *ctrl)
memcpy(req->buf, cpkt->buf, value);
gsi_ctrl_pkt_free(cpkt);
req->complete = gsi_ctrl_send_response_complete;
req->context = gsi;
log_event_dbg("copied encap_resp %d bytes",
value);
break;