summaryrefslogtreecommitdiffstats
path: root/arch/riscv/kernel/cpu_ops_sbi.c
diff options
context:
space:
mode:
authorRicardo Ribalda <ribalda@chromium.org>2024-06-10 21:17:48 +0200
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2024-06-17 01:39:09 +0200
commit53d7995383fae089319e24636250f248b0fdb0ce (patch)
treed9e401fa025f9effd8383385fbe8c0e684937a09 /arch/riscv/kernel/cpu_ops_sbi.c
parentmedia: uvcvideo: Refactor clock circular buffer (diff)
downloadlinux-53d7995383fae089319e24636250f248b0fdb0ce.tar.xz
linux-53d7995383fae089319e24636250f248b0fdb0ce.zip
media: uvcvideo: Fix hw timestamp handling for slow FPS
In UVC 1.5 we get a single clock value per frame. With the current buffer size of 32, FPS slowers than 32 might roll-over twice. The current code cannot handle two roll-over and provide invalid timestamps. Revome all the samples from the circular buffer that are more than two rollovers old, so the algorithm always provides good timestamps. Note that we are removing values that are more than one second old, which means that there is enough distance between the two points that we use for the interpolation to provide good values. Tested-by: HungNien Chen <hn.chen@sunplusit.com> Reviewed-by: Sergey Senozhatsky <senozhatsky@chromium.org> Reviewed-by: Tomasz Figa <tfiga@chromium.org> Signed-off-by: Ricardo Ribalda <ribalda@chromium.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Link: https://lore.kernel.org/r/20240610-hwtimestamp-followup-v1-1-f9eaed7be7f0@chromium.org Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'arch/riscv/kernel/cpu_ops_sbi.c')
0 files changed, 0 insertions, 0 deletions