Re: [PATCH v4 01/10] usb: gadget: uvc: always set interrupt on zero length requests
From: Laurent Pinchart
Date: Tue Aug 13 2024 - 05:17:59 EST
Hi Michael,
Thank you for the patch.
On Tue, Aug 13, 2024 at 11:09:25AM +0200, Michael Grzeschik wrote:
> Since the uvc gadget is depending on the completion handler to
> properly enqueue new data, we have to ensure that the requeue mechanism
> is always working. To be safe we always create an interrupt
> on zero length requests.
What do you mean "to be safe" ? Either there's an issue, and then the
commit message should describe it, or there's no issue, and this isn't
needed.
> Signed-off-by: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx>
>
> ---
> v3 -> v4: -
> v1 -> v3: new patch
> ---
> drivers/usb/gadget/function/uvc_video.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/usb/gadget/function/uvc_video.c b/drivers/usb/gadget/function/uvc_video.c
> index d41f5f31dadd5..03bff39cd4902 100644
> --- a/drivers/usb/gadget/function/uvc_video.c
> +++ b/drivers/usb/gadget/function/uvc_video.c
> @@ -303,6 +303,7 @@ static int uvcg_video_usb_req_queue(struct uvc_video *video,
> * between latency and interrupt load.
> */
> if (list_empty(&video->req_free) || ureq->last_buf ||
> + !req->length ||
> !(video->req_int_count %
> DIV_ROUND_UP(video->uvc_num_requests, 4))) {
> video->req_int_count = 0;
--
Regards,
Laurent Pinchart