Re: [PATCH] media: uvcvideo: Add quirk for Luxvisions RGB Camera (30c9:0122)
From: Ricardo Ribalda
Date: Mon Sep 28 2026 - 09:39:45 EST
Hi Laurent
On Mon, 28 Sept 2026 at 15:24, Laurent Pinchart
<laurent.pinchart@xxxxxxxxxxxxxxxx> wrote:
>
> 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 ?
I wanted to link the usb descriptors. I'd rather have them copy pasted
in to the commit message or with a link to lore
(For the usb descriptors I think the doc says that we have to use lore )
>
> > > 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.
Can we please add this to the CI? It is a bit of a waste of time to
manually verify that they are properly sorted
>
> 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
--
Ricardo Ribalda