Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b22717a4 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

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

parents 6189abef df8290d2
Loading
Loading
Loading
Loading
+10 −7
Original line number Diff line number Diff line
@@ -2014,13 +2014,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;
	}
}
@@ -2115,6 +2108,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)
{
@@ -2200,6 +2201,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;