Re: [PATCH] media: uvcvideo: Force UVC version to 1.0a for 0408:4035

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



HI Laurent

On Mon, 16 Jan 2023 at 15:12, Laurent Pinchart
<laurent.pinchart@xxxxxxxxxxxxxxxx> wrote:
>
> Hi Ricardo,
>
> On Mon, Jan 16, 2023 at 02:05:28PM +0100, Ricardo Ribalda wrote:
> > On Sun, 15 Jan 2023 at 21:52, Laurent Pinchart wrote:
> > >
> > > The Quanta ACER HD User Facing camera reports a UVC 1.50 version, but
> > > implements UVC 1.0a as shown by the UVC probe control being 26 bytes
> > > long. Force the UVC version for that device.
> >
> > Don't we also want to include 4035:4033 ?
>
> I've asked for the lsusb output for that device, I'll send a separate
> patch when I get it.
>
> > I am curious about the PowerLine Control (does it have one?) will it
> > behave like 1.1 or 1.5
>
> Good question. Hardcoding the version to 1.0a will not cause an error,
> but may prevent the auto mode from being supported.
>
> An alternative would be to automatically fall back to the UVC 1.0a video
> probe and commit control when the size returned by GET_CUR differs from
> the value expected from UVC 1.5. That would be a generic fix that won't
> require quirks. What do you think ?

That sounds good to me, but we should print a warning. At least to
make the users aware that here be dragons.

>
> > Would it be possible to get the output with uvc_debug enabled?
>
> I'll let you tell Giuliano how to provide that :-)

sure, you just do:

sudo rmmod uvcvideo; sudo modprobe uvcvideo  trace=0xffffffff

and then when you run dmesg, there will be much more uvc output

>
> > > Reported-by: Giuliano Lotta <giuliano.lotta@xxxxxxxxx>
> > > Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> > > ---
> > >
> > > Giuliano, I believe you've successfully tested this patch. If so, could
> > > you reply with a Tested-by tag ? Just copying the following in your
> > > reply will do:
> > >
> > > Tested-by: Giuliano Lotta <giuliano.lotta@xxxxxxxxx>
> > >
> > >  drivers/media/usb/uvc/uvc_driver.c | 11 +++++++++++
> > >  1 file changed, 11 insertions(+)
> > >
> > > diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c
> > > index 1a186abeb4fa..742eeaff333e 100644
> > > --- a/drivers/media/usb/uvc/uvc_driver.c
> > > +++ b/drivers/media/usb/uvc/uvc_driver.c
> > > @@ -2429,6 +2429,17 @@ static const struct usb_device_id uvc_ids[] = {
> > >           .bInterfaceSubClass   = 1,
> > >           .bInterfaceProtocol   = UVC_PC_PROTOCOL_15,
> > >           .driver_info          = (kernel_ulong_t)&uvc_ctrl_power_line_limited },
> > > +       /* Quanta ACER HD User Facing */
> > > +       { .match_flags          = USB_DEVICE_ID_MATCH_DEVICE
> > > +                               | USB_DEVICE_ID_MATCH_INT_INFO,
> > > +         .idVendor             = 0x0408,
> > > +         .idProduct            = 0x4035,
> > > +         .bInterfaceClass      = USB_CLASS_VIDEO,
> > > +         .bInterfaceSubClass   = 1,
> > > +         .bInterfaceProtocol   = UVC_PC_PROTOCOL_15,
> > > +         .driver_info          = (kernel_ulong_t)&(const struct uvc_device_info){
> > > +               .uvc_version = 0x010a,
> > > +         } },
> > >         /* LogiLink Wireless Webcam */
> > >         { .match_flags          = USB_DEVICE_ID_MATCH_DEVICE
> > >                                 | USB_DEVICE_ID_MATCH_INT_INFO,
> > >
> > > base-commit: fd957081cff04668f390c6f290bdcc7fc009a0f1
>
> --
> Regards,
>
> Laurent Pinchart



-- 
Ricardo Ribalda



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux