On 06/01/16(Wed) 10:17, Martin Pieuchot wrote:
> On 05/01/16(Tue) 13:19, Matt Adams wrote:
> > On 05/01/16 05:10 AM, Martin Pieuchot wrote:
> > >On 03/01/16(Sun) 23:18, Matt Adams wrote:
> > >>Hi,
> > >>
> > >>I noted that uvideo has support for the Logitech QuickCam Pro 5000 - a 
> > >>piece
> > >>of hardware that I have. However, ugen appears to attach to this device
> > >>instead of allowing the special firmware (installed via "# fw_install
> > >>uvideo") to configure /dev/video0 or /dev/video1, even though those two
> > >>device files are present in the system.
> > >>
> > >>For example:
> > >>
> > >>-bash-4.3$ luvcview
> > >>luvcview version 2.0
> > >>Video driver: x11
> > >>A window manager is available
> > >>video /dev/video0
> > >>ERROR opening V4L interface
> > >>: Device not configured
> > >>
> > >>Is there something that I am missing here or is my webcam not actually
> > >>supported?
> > >Could you paste the output of "lsusb -v" for your webcam?  lsusb(1) is
> > >part of the usbutils package.
> > 
> > lsusb -v as follows (webcam portion only):
> > 
> > Bus 001 Device 002: ID 046d:08c5 Logitech, Inc. QuickCam Pro 5000
> > Device Descriptor:
> >   bLength                18
> >   bDescriptorType         1
> >   bcdUSB               2.00
> >   bDeviceClass            0 (Defined at Interface level)
> >   bDeviceSubClass         0
> >   bDeviceProtocol         1
> >   bMaxPacketSize0        64
> >   idVendor           0x046d Logitech, Inc.
> >   idProduct          0x08c5 QuickCam Pro 5000
> 
> Thanks, does the diff below help?

Could you test the diff?  Does it work?

> Index: uvideo.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/usb/uvideo.c,v
> retrieving revision 1.183
> diff -u -p -r1.183 uvideo.c
> --- uvideo.c  20 Dec 2015 10:08:05 -0000      1.183
> +++ uvideo.c  6 Jan 2016 09:14:05 -0000
> @@ -382,6 +382,12 @@ struct uvideo_devs {
>           NULL,
>           UVIDEO_FLAG_VENDOR_CLASS
>       },
> +     {   /* Incorrectly reports as bInterfaceClass=UICLASS_VENDOR */
> +         { USB_VENDOR_LOGITECH, USB_PRODUCT_LOGITECH_QUICKCAMPRO5K_1 },
> +         NULL,
> +         NULL,
> +         UVIDEO_FLAG_VENDOR_CLASS
> +     },
>  };
>  #define uvideo_lookup(v, p) \
>       ((struct uvideo_devs *)usb_lookup(uvideo_devs, v, p))

Reply via email to