mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 01:49:46 +00:00
Revert "usb: gadget: uvc: Add missing call for additional setup data"
commiteb38d913c2upstream. This reverts commit4fbac5206a. This commit breaks g_webcam when used with uvc-gadget [1]. The user space application (e.g. uvc-gadget) is responsible for sending response to UVC class specific requests on control endpoint in uvc_send_response() in uvc_v4l2.c. The bad commit was causing a duplicate response to be sent with incorrect response data thus causing UVC probe to fail at the host and broken control transfer endpoint at the gadget. [1] - git://git.ideasonboard.org/uvc-gadget.git Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Roger Quadros <rogerq@ti.com> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
5ce2e4ce4a
commit
03123df08e
@@ -258,13 +258,6 @@ uvc_function_setup(struct usb_function *f, const struct usb_ctrlrequest *ctrl)
|
|||||||
memcpy(&uvc_event->req, ctrl, sizeof(uvc_event->req));
|
memcpy(&uvc_event->req, ctrl, sizeof(uvc_event->req));
|
||||||
v4l2_event_queue(&uvc->vdev, &v4l2_event);
|
v4l2_event_queue(&uvc->vdev, &v4l2_event);
|
||||||
|
|
||||||
/* Pass additional setup data to userspace */
|
|
||||||
if (uvc->event_setup_out && uvc->event_length) {
|
|
||||||
uvc->control_req->length = uvc->event_length;
|
|
||||||
return usb_ep_queue(uvc->func.config->cdev->gadget->ep0,
|
|
||||||
uvc->control_req, GFP_ATOMIC);
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user