[RESEND,v2,1/8] media: uvc: Extend documentation of uvc_video_clock_decode()

Message ID 20220920-resend-hwtimestamp-v2-1-0d7978a817cc@chromium.org
State New
Headers
Series uvcvideo: Fixes for hw timestamping |

Commit Message

Ricardo Ribalda Dec. 2, 2022, 5:02 p.m. UTC
  Make a explicit reference to uvc 1.5, explaining how the algorithm
supports the different behaviour of uvc 1.1 and 1.5.

Tested-by: HungNien Chen <hn.chen@sunplusit.com>
Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
---
 drivers/media/usb/uvc/uvc_video.c | 3 +++
 1 file changed, 3 insertions(+)
  

Comments

Laurent Pinchart Dec. 30, 2022, 1:36 p.m. UTC | #1
Hi Ricardo,

Thank you for the patch.

s/uvc/uvcvideo/ in the subject line.

On Fri, Dec 02, 2022 at 06:02:41PM +0100, Ricardo Ribalda wrote:
> Make a explicit reference to uvc 1.5, explaining how the algorithm

s/a explicit/an explicit/
s/uvc/UVC/

> supports the different behaviour of uvc 1.1 and 1.5.

Ditto.

> Tested-by: HungNien Chen <hn.chen@sunplusit.com>
> Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
> ---
>  drivers/media/usb/uvc/uvc_video.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/media/usb/uvc/uvc_video.c b/drivers/media/usb/uvc/uvc_video.c
> index 170a008f4006..ab56e65ca324 100644
> --- a/drivers/media/usb/uvc/uvc_video.c
> +++ b/drivers/media/usb/uvc/uvc_video.c
> @@ -517,6 +517,9 @@ uvc_video_clock_decode(struct uvc_streaming *stream, struct uvc_buffer *buf,
>  	/*
>  	 * To limit the amount of data, drop SCRs with an SOF identical to the
>  	 * previous one.
> +	 * This filtering is also needed for supporting UVC 1.5. Where all the
> +	 * data packages of the same frame contains the same sof. In that case
> +	 * only the first one will match the host_sof.

  	 * To limit the amount of data, drop SCRs with an SOF identical to the
  	 * previous one. This filtering is also needed to support UVC 1.5, where
	 * all the data packets of the same frame contains the same SOF. In that
	 * case only the first one will match the host_sof.

Conditionally-Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

I can fix this when applying if there's no other need to submit a v3.

>  	 */
>  	dev_sof = get_unaligned_le16(&data[header_size - 2]);
>  	if (dev_sof == stream->clock.last_sof)
>
  

Patch

diff --git a/drivers/media/usb/uvc/uvc_video.c b/drivers/media/usb/uvc/uvc_video.c
index 170a008f4006..ab56e65ca324 100644
--- a/drivers/media/usb/uvc/uvc_video.c
+++ b/drivers/media/usb/uvc/uvc_video.c
@@ -517,6 +517,9 @@  uvc_video_clock_decode(struct uvc_streaming *stream, struct uvc_buffer *buf,
 	/*
 	 * To limit the amount of data, drop SCRs with an SOF identical to the
 	 * previous one.
+	 * This filtering is also needed for supporting UVC 1.5. Where all the
+	 * data packages of the same frame contains the same sof. In that case
+	 * only the first one will match the host_sof.
 	 */
 	dev_sof = get_unaligned_le16(&data[header_size - 2]);
 	if (dev_sof == stream->clock.last_sof)