diff --git a/drivers/usb/gadget/function/f_uvc.c b/drivers/usb/gadget/function/f_uvc.c index 3c5d2593bbf9..7ccc28c93dc7 100644 --- a/drivers/usb/gadget/function/f_uvc.c +++ b/drivers/usb/gadget/function/f_uvc.c @@ -275,6 +275,10 @@ uvc_function_ep0_complete(struct usb_ep *ep, struct usb_request *req) struct v4l2_event v4l2_event; struct uvc_event *uvc_event = (void *)&v4l2_event.u.data; + uvc_trace(UVC_TRACE_CONTROL, + "event_setup_out %d, data len %d\n", + uvc->event_setup_out, req->actual); + if (uvc->event_setup_out) { uvc->event_setup_out = 0; @@ -293,6 +297,11 @@ uvc_function_setup(struct usb_function *f, const struct usb_ctrlrequest *ctrl) struct v4l2_event v4l2_event; struct uvc_event *uvc_event = (void *)&v4l2_event.u.data; + uvc_trace(UVC_TRACE_CONTROL, + "setup request %02x %02x value %04x index %04x %04x\n", + ctrl->bRequestType, ctrl->bRequest, le16_to_cpu(ctrl->wValue), + le16_to_cpu(ctrl->wIndex), le16_to_cpu(ctrl->wLength)); + if ((ctrl->bRequestType & USB_TYPE_MASK) != USB_TYPE_CLASS) { uvcg_info(f, "invalid request type\n"); return -EINVAL; diff --git a/drivers/usb/gadget/function/uvc_v4l2.c b/drivers/usb/gadget/function/uvc_v4l2.c index 4c51e1629527..2528c894254f 100644 --- a/drivers/usb/gadget/function/uvc_v4l2.c +++ b/drivers/usb/gadget/function/uvc_v4l2.c @@ -41,6 +41,7 @@ uvc_send_response(struct uvc_device *uvc, struct uvc_request_data *data) req->length = min_t(unsigned int, uvc->event_length, data->length); req->zero = data->length < uvc->event_length; + uvc_trace(UVC_TRACE_CONTROL, "%s: req len %d\n", __func__, req->length); memcpy(req->buf, data->data, req->length); return usb_ep_queue(cdev->gadget->ep0, req, GFP_KERNEL);