Re: [PATCH] media: uvcvideo: Add quirk for Luxvisions RGB Camera (30c9:0122)
From: Laurent Pinchart
Date: Mon Sep 28 2026 - 09:39:45 EST
On Fri, Sep 04, 2026 at 11:15:15AM +0200, Ricardo Ribalda wrote:
> On Thu, 3 Sept 2026 at 10:58, Kean Ren <rh_king@xxxxxxx> wrote:
> >
> > The device binds cleanly but delivers no image data; USB autosuspend is
> > suspending the streaming endpoint. Disable autosuspend for it.
> >
> > Issue found on Lenovo ThinkPad X13 (codename Zelda, Intel); confirmed
> > working with this quirk.
> >
> Link: https://lore.kernel.org/linux-media/20260904090751.1814783-1-rh_king@xxxxxxx/T/#mf5306ef689ce38ed331a3098272cb0ac2588ed79
When linking to the original thread on lore, the patch.msgid.link domain
is preferred (see Documentation/process/maintainer-tip.rst). That would
be
Link: https://patch.msgid.link/linux-media/20260904090751.1814783-1-rh_king@xxxxxxx/
Did you mean to specifically link to the descriptors though ? As they're
in the same mail thread, I think the link to the patch itself should be
enough. Do you prefer otherwise ?
> > Tested-by: Kean Ren <rh_king@xxxxxxx>
>
> nit: I think we do not usually add the Tested-by: tag for authors. We
> expect that it has been tested :)
Maybe we shouldn't :-) We merge plenty of code that hasn't been tested
by the author, a prime example being API refactoring. Actually, reading
Documentation/, I can't see anything that explicitly approves or forbids
a Tested-by tag from the author.
This being said, for driver patches like these I would certainly expect
the author to have tested the change.
> > Signed-off-by: Kean Ren <rh_king@xxxxxxx>
> > ---
> > 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 e289cc71ba98..32bf353013a1 100644
> > --- a/drivers/media/usb/uvc/uvc_driver.c
> > +++ b/drivers/media/usb/uvc/uvc_driver.c
> > @@ -3216,6 +3216,15 @@ static const struct usb_device_id uvc_ids[] = {
> > .bInterfaceSubClass = 1,
> > .bInterfaceProtocol = 0,
> > .driver_info = UVC_INFO_META(V4L2_META_FMT_D4XX) },
> > + /* Luxvisions Innotech Integrated RGB Camera (Lenovo laptops) */
> > + { .match_flags = USB_DEVICE_ID_MATCH_DEVICE
> > + | USB_DEVICE_ID_MATCH_INT_INFO,
> > + .idVendor = 0x30c9,
> > + .idProduct = 0x0122,
> > + .bInterfaceClass = USB_CLASS_VIDEO,
> > + .bInterfaceSubClass = 1,
> > + .bInterfaceProtocol = 0,
> > + .driver_info = UVC_INFO_QUIRK(UVC_QUIRK_DISABLE_AUTOSUSPEND) },
>
> The quirks are sorted by vid:pid. Sorry I did not notice this before.
I can handle this when applying.
Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> > /* Intel Realsense D435i depth camera */
> > { .match_flags = USB_DEVICE_ID_MATCH_DEVICE
> > | USB_DEVICE_ID_MATCH_INT_INFO,
--
Regards,
Laurent Pinchart