Hi Isaac, Thank you for the patch. On Tue, Nov 12, 2024 at 11:29:26AM +0000, Isaac Scott wrote: > Add the definition of a new quirk that supports the Sonix Technology > Co. 292A camera, which uses the AR0330 sensor. The camera supports the > output of two simultaneous streams, which need to be handled > appropriately by the driver. The fact that the camera can output two streams isn't an issue, the problem is that it suffers from the packet drop issue. I would write something along the lines of 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 quick to work around the issue. If you're fine with that, you can just let me know and I'll make the change when applying the patch. There's no need to resubmit the series just for this. Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > Signed-off-by: Isaac Scott <isaac.scott@xxxxxxxxxxxxxxxx> > --- > 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 0fac689c6350..15aee3f2b5f9 100644 > --- a/drivers/media/usb/uvc/uvc_driver.c > +++ b/drivers/media/usb/uvc/uvc_driver.c > @@ -2752,6 +2752,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, -- Regards, Laurent Pinchart