On Thu Nov 28 14:51:44 2024 +0000, Isaac Scott wrote:
> The Sonix Technology Co. 292A camera (which uses an AR0330 sensor), can
> produce MJPEG and H.264 streams concurrently. When doing so, it drops
> the last packets of MJPEG frames every time the H.264 stream generates a
> key frame. Set the UVC_QUIRK_MJPEG_NO_EOF quirk to work around the
> issue.
> 
> Reviewed-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
> Signed-off-by: Isaac Scott <isaac.sc...@ideasonboard.com>
> Link: 
> https://lore.kernel.org/r/20241128145144.61475-3-isaac.sc...@ideasonboard.com
> Signed-off-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
> Signed-off-by: Mauro Carvalho Chehab <mchehab+hua...@kernel.org>

Patch committed.

Thanks,
Mauro Carvalho Chehab

 drivers/media/usb/uvc/uvc_driver.c | 9 +++++++++
 1 file changed, 9 insertions(+)

---

diff --git a/drivers/media/usb/uvc/uvc_driver.c 
b/drivers/media/usb/uvc/uvc_driver.c
index c3ccd9be0a47..8a8d194e51cd 100644
--- a/drivers/media/usb/uvc/uvc_driver.c
+++ b/drivers/media/usb/uvc/uvc_driver.c
@@ -2848,6 +2848,15 @@ static const struct usb_device_id uvc_ids[] = {
          .bInterfaceSubClass   = 1,
          .bInterfaceProtocol   = 0,
          .driver_info          = (kernel_ulong_t)&uvc_quirk_probe_minmax },
+       /* Sonix Technology Co. Ltd. - 292A IPC AR0330 */
+       { .match_flags          = USB_DEVICE_ID_MATCH_DEVICE
+                               | USB_DEVICE_ID_MATCH_INT_INFO,
+         .idVendor             = 0x0c45,
+         .idProduct            = 0x6366,
+         .bInterfaceClass      = USB_CLASS_VIDEO,
+         .bInterfaceSubClass   = 1,
+         .bInterfaceProtocol   = 0,
+         .driver_info          = UVC_INFO_QUIRK(UVC_QUIRK_MJPEG_NO_EOF) },
        /* MT6227 */
        { .match_flags          = USB_DEVICE_ID_MATCH_DEVICE
                                | USB_DEVICE_ID_MATCH_INT_INFO,

Reply via email to