RE: uvcvideo: Unknown video format,00000032-0002-0010-8000-00aa00389b71

From: Mario.Limonciello
Date: Mon Mar 26 2018 - 03:33:12 EST


> -----Original Message-----
> From: Paul Menzel [mailto:pmenzel+linux-media@xxxxxxxxxxxxx]
> Sent: Wednesday, March 21, 2018 7:35 AM
> To: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> Cc: linux-media@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; it+linux-
> media@xxxxxxxxxxxxx; Limonciello, Mario <Mario_Limonciello@xxxxxxxx>
> Subject: Re: uvcvideo: Unknown video format,00000032-0002-0010-8000-
> 00aa00389b71
>
> Dear Laurent,
>
>
> On 03/21/2018 10:25 AM, Laurent Pinchart wrote:
>
> > On Tuesday, 20 March 2018 18:46:24 EET Paul Menzel wrote:
> >> On 03/20/18 14:30, Laurent Pinchart wrote:
> >>> On Tuesday, 20 March 2018 14:20:14 EET Paul Menzel wrote:
> >>>> On the Dell XPS 13 9370, Linux 4.16-rc6 outputs the messages below.
> >>>>
> >>>> ```
> >>
> >> [â]
> >>
> >>>> [ 2.340736] input: Integrated_Webcam_HD: Integrate as
> >>>> /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.0/input/input9
> >>>> [ 2.341447] uvcvideo: Unknown video format
> >>>> 00000032-0002-0010-8000-00aa00389b71 >> [ 2.341450] uvcvideo: Found
> >>>> UVC 1.00 device Integrated_Webcam_HD (0bda:58f4)
> >>
> >> [â]
> >>
> >>>> ```
> >>>>
> >>>> Please tell me, what I can do to improve the situation.
> >>>
> >>> Some vendors routinely implement new formats without bothering to send a
> >>> patch for the uvcvideo driver. It would be easy to do so, but it requires
> >>> knowing which format is meant by the GUID. Most format GUIDs are of the
> >>> form 32595559-0000-0010-8000-00aa00389b71 that starts with a 4CC, but
> >>> that's not the case here.
> >>
> >> I am adding Mario to the receiver list, though he is currently on vacation.
> >>
> >>> Could you send me the output of
> >>>
> >>> lsusb -v -d 0bda:58f4
> >>>
> >>> running as root if possible ?
> >>
> >> Sure, please find it attached.
> >
> > Thank you.
> >
> > Could you please try the following patch ?
> >
> > commit 7b3dea984b380f5b4b5c1956a9c6c23966af2149
> > Author: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> > Date: Wed Mar 21 11:16:40 2018 +0200
> >
> > media: uvcvideo: Add KSMedia 8-bit IR format support
> >
> > Add support for the 8-bit IR format GUID defined in the Microsoft Kernel
> > Streaming Media API.
> >
> > Reported-by: Paul Menzel <pmenzel+linux-media@xxxxxxxxxxxxx>
> > Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> >
> > diff --git a/drivers/media/usb/uvc/uvc_driver.c
> b/drivers/media/usb/uvc/uvc_driver.c
> > index 2469b49b2b30..3691d87ef869 100644
> > --- a/drivers/media/usb/uvc/uvc_driver.c
> > +++ b/drivers/media/usb/uvc/uvc_driver.c
> > @@ -99,6 +99,11 @@ static struct uvc_format_desc uvc_fmts[] = {
> > .guid = UVC_GUID_FORMAT_D3DFMT_L8,
> > .fcc = V4L2_PIX_FMT_GREY,
> > },
> > + {
> > + .name = "IR 8-bit (L8_IR)",
> > + .guid = UVC_GUID_FORMAT_KSMEDIA_L8_IR,
> > + .fcc = V4L2_PIX_FMT_GREY,
> > + },
> > {
> > .name = "Greyscale 10-bit (Y10 )",
> > .guid = UVC_GUID_FORMAT_Y10,
> > diff --git a/drivers/media/usb/uvc/uvcvideo.h b/drivers/media/usb/uvc/uvcvideo.h
> > index be5cf179228b..6b955e0dd956 100644
> > --- a/drivers/media/usb/uvc/uvcvideo.h
> > +++ b/drivers/media/usb/uvc/uvcvideo.h
> > @@ -157,6 +157,9 @@
> > #define UVC_GUID_FORMAT_D3DFMT_L8 \
> > {0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, \
> > 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71}
> > +#define UVC_GUID_FORMAT_KSMEDIA_L8_IR \
> > + {0x32, 0x00, 0x00, 0x00, 0x02, 0x00, 0x10, 0x00, \
> > + 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71}
> >
> >
> > /* ------------------------------------------------------------------------
>
> Sure. After fighting how to apply with Mozilla Thunderbird as my mailer
> â hints are welcome â, the warning is gone.
>
> ```
> [ 2.569788] calling uvc_init+0x0/0x1000 [uvcvideo] @ 297
> [ 2.570011] calling cryptd_init+0x0/0x1000 [cryptd] @ 287
> [ 2.570018] cryptd: max_cpu_qlen set to 1000
> [ 2.570022] initcall cryptd_init+0x0/0x1000 [cryptd] returned 0 after
> 7 usecs
> [ 2.570030] calling init_nls_cp437+0x0/0x1000 [nls_cp437] @ 332
> [ 2.570033] initcall init_nls_cp437+0x0/0x1000 [nls_cp437] returned 0
> after 0 usecs
> [ 2.570502] uvcvideo: Found UVC 1.00 device Integrated_Webcam_HD
> (0bda:58f4)
> [ 2.573583] uvcvideo 1-5:1.0: Entity type for entity Extension 4 was
> not initialized!
> [ 2.573585] uvcvideo 1-5:1.0: Entity type for entity Extension 7 was
> not initialized!
> [ 2.573586] uvcvideo 1-5:1.0: Entity type for entity Processing 2 was
> not initialized!
> [ 2.573587] uvcvideo 1-5:1.0: Entity type for entity Camera 1 was not
> initialized!
> [ 2.573652] input: Integrated_Webcam_HD: Integrate as
> /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.0/input/input10
> [ 2.574192] uvcvideo: Found UVC 1.00 device Integrated_Webcam_HD
> (0bda:58f4)
> [ 2.575629] proc_thermal 0000:00:04.0: enabling device (0000 -> 0002)
> [ 2.576052] uvcvideo: Unable to create debugfs 1-2 directory.
> [ 2.576118] uvcvideo 1-5:1.2: Entity type for entity Extension 10 was
> not initialized!
> [ 2.576119] uvcvideo 1-5:1.2: Entity type for entity Extension 12 was
> not initialized!
> [ 2.576120] uvcvideo 1-5:1.2: Entity type for entity Processing 9 was
> not initialized!
> [ 2.576121] uvcvideo 1-5:1.2: Entity type for entity Camera 11 was
> not initialized!
> [ 2.576184] input: Integrated_Webcam_HD: Integrate as
> /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.2/input/input11
> [ 2.576229] usbcore: registered new interface driver uvcvideo
> [ 2.576230] USB Video Class driver (1.1.1)
> [ 2.576236] initcall uvc_init+0x0/0x1000 [uvcvideo] returned 0 after
> 6290 usecs
> ```
>
> Tested-by: Paul Menzel <pmenzel+linux-media@xxxxxxxxxxxxx>
>

Great to hear. Laurent, when you submit this with Paul's tag would you
please consider to also CC @stable.