From: Ricardo Ribalda <ribalda@chromium.org>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
"hn.chen" <hn.chen@sunplusit.com>,
Hans Verkuil <hverkuil@xs4all.nl>,
Ricardo Ribalda <ribalda@chromium.org>,
Sergey Senozhatsky <senozhatsky@chromium.org>
Subject: [PATCH v10 0/6] uvcvideo: Fixes for hw timestamping
Date: Sat, 23 Mar 2024 10:48:01 +0000 [thread overview]
Message-ID: <20240323-resend-hwtimestamp-v10-0-b08e590d97c7@chromium.org> (raw)
Add some fixes for fixing hw timestamp on some Logitech and SunplusIT
cameras. The issues have been previously reported to the manufacturers.
Also include a patch to fix the current hw timestamping logic for ANY
uvc 1.5 model running at under 16 fps.
@HungNien, the logic for empty_ts has slightly changed since v4, would
be great if you could test it on your end.
Tested-by: HungNien Chen <hn.chen@sunplusit.com>
Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
---
Changes in v10: Thanks Sergey and Laruent!
- Fix comments and style
- Link to v9: https://lore.kernel.org/r/20220920-resend-hwtimestamp-v9-6-55a89f46f6be@chromium.org
Changes in v9:
- Fix bug on add_sample(). Sorry about that, click on send too fast :S
- Link to v8: https://lore.kernel.org/r/20220920-resend-hwtimestamp-v8-0-0edaca2e2ab3@chromium.org
Changes in v8: Thanks Sergey!
- Move last_sof save into uvc_video_clock_add_sample().
- Improve comments on add_sample().
- Link to v7: https://lore.kernel.org/r/20220920-resend-hwtimestamp-v7-0-cf1d78bb8821@chromium.org
Changes in v7: Thanks Sergey!
- Fix all negative modulus, including old bug
- Improve doc for 1/4 second accuracy.
- Link to v6: https://lore.kernel.org/r/20220920-resend-hwtimestamp-v6-0-c7a99299ec35@chromium.org
Changes in v6 (Thanks Sergey!):
- Rebase on top of linus/master
- Add missing host_sof assignment, ups :(. Sorry about that!
- Improve comments for empty TS quirk
- Link to v5: https://lore.kernel.org/r/20220920-resend-hwtimestamp-v5-0-660679c6e148@chromium.org
Changes in v5: Thanks Dan
- Check for !buf on empty TS packets.
- Link to v4: https://lore.kernel.org/r/20220920-resend-hwtimestamp-v4-0-a8ddc1358a29@chromium.org
Changes in v4 (Thanks Laurent!):
- Rebase on top of pinchart/next/uvc
- Use heuristic for UVC_QUIRK_IGNORE_EMPTY_TS
- Link to v3: https://lore.kernel.org/r/20220920-resend-hwtimestamp-v3-0-db9faee7f47d@chromium.org
Changes in v3 (Thanks Laurent!):
- Rebase on top of pinchart/uvc/next
- Fix hw timestampt handling for slow FPS
- Improve commit message
- Quirk for invalid dev_sof in Logi C922
- Improve commit message
- Allow hw clock updates with buffers not full
- Fix typo and improve messages
- Refactor clock circular buffer
- Improve commit message
- Quirk for autosuspend in Logi C910
- Improve commit message
- Add comments around the quirk
- Create UVC_QUIRK_IGNORE_EMPTY_TS quirk
- Improve comments
- Allow quirking by entity guid
- unsinged int
- Extend documentation of uvc_video_clock_decode()
- uvcvideo on commit message
- Improve comment
- Link to v2: https://lore.kernel.org/r/20220920-resend-hwtimestamp-v2-0-d8d0616bb612@chromium.org
Changes in v2:
- Require 1/4 sec of data before using the hw timestamps
- Add Tested-by SunplusIT
- Link to v1: https://lore.kernel.org/r/20220920-resend-hwtimestamp-v1-0-e9c14b258404@chromium.org
---
Ricardo Ribalda (6):
media: uvcvideo: Support timestamp lists of any size
media: uvcvideo: Ignore empty TS packets
media: uvcvideo: Quirk for invalid dev_sof in Logitech C922
media: uvcvideo: Allow hw clock updates with buffers not full
media: uvcvideo: Refactor clock circular buffer
media: uvcvideo: Fix hw timestamp handling for slow FPS
drivers/media/usb/uvc/uvc_driver.c | 9 +++
drivers/media/usb/uvc/uvc_video.c | 155 ++++++++++++++++++++++++++-----------
drivers/media/usb/uvc/uvcvideo.h | 2 +
3 files changed, 121 insertions(+), 45 deletions(-)
---
base-commit: b14257abe7057def6127f6fb2f14f9adc8acabdb
change-id: 20220920-resend-hwtimestamp-b3e22729284d
Best regards,
--
Ricardo Ribalda <ribalda@chromium.org>
next reply other threads:[~2024-03-23 10:48 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-23 10:48 Ricardo Ribalda [this message]
2024-03-23 10:48 ` [PATCH v10 1/6] media: uvcvideo: Support timestamp lists of any size Ricardo Ribalda
2024-03-23 10:48 ` [PATCH v10 2/6] media: uvcvideo: Ignore empty TS packets Ricardo Ribalda
2024-03-23 10:48 ` [PATCH v10 3/6] media: uvcvideo: Quirk for invalid dev_sof in Logitech C922 Ricardo Ribalda
2024-03-23 12:16 ` Oleksandr Natalenko
2024-03-25 7:52 ` Ricardo Ribalda
2024-03-25 9:23 ` Oleksandr Natalenko
2024-03-25 9:25 ` Ricardo Ribalda
2024-03-25 12:50 ` Oleksandr Natalenko
2024-03-25 14:13 ` Ricardo Ribalda
2024-03-23 10:48 ` [PATCH v10 4/6] media: uvcvideo: Allow hw clock updates with buffers not full Ricardo Ribalda
2024-03-23 10:48 ` [PATCH v10 5/6] media: uvcvideo: Refactor clock circular buffer Ricardo Ribalda
2024-03-23 10:48 ` [PATCH v10 6/6] media: uvcvideo: Fix hw timestamp handling for slow FPS Ricardo Ribalda
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240323-resend-hwtimestamp-v10-0-b08e590d97c7@chromium.org \
--to=ribalda@chromium.org \
--cc=hn.chen@sunplusit.com \
--cc=hverkuil@xs4all.nl \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=senozhatsky@chromium.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).