Re: Webcam LED control regression

From: Linux regression tracking (Thorsten Leemhuis)
Date: Tue Jun 06 2023 - 06:42:44 EST


CCing a few people and lists that should be aware of this and might be
able to help.

On 05.06.23 18:39, Poncho wrote:
> With kernel 6.3, the LED of my C922 Pro Stream Webcam is no longer
> controllable.
>
> With kernel 6.1 v4l2-ctl --all returns:
>
>> led1_mode 0x0a046d05 (menu)   : min=0 max=3 default=0 value=0 (Off)
>>     0: Off
>>     1: On
>>     2: Blink
>>     3: Auto
>
>
>
> but with kernel 6.3 I get:
>
>> led1_mode 0x0a046d05 (menu)   : min=4 max=4 default=0 value=0
>>     4:

Thanks for the report.

FWIW, maybe one of those people that I CCed has an idea what's wrong. If
none of them brings one to the table withing the next two or three days,
you likely have to perform a bisection to find the change that broke
thing for you.

For the rest of this mail:

[TLDR: I'm adding this report to the list of tracked Linux kernel
regressions; the text you find below is based on a few templates
paragraphs you might have encountered already in similar form.
See link in footer if these mails annoy you.]

> Full output bellow:
>
>> Driver Info:
>>     Driver name      : uvcvideo
>>     Card type        : C922 Pro Stream Webcam
>>     Bus info         : usb-0000:00:14.0-9
>>     Driver version   : 6.3.5
>>     Capabilities     : 0x84a00001
>>         Video Capture
>>         Metadata Capture
>>         Streaming
>>         Extended Pix Format
>>         Device Capabilities
>>     Device Caps      : 0x04200001
>>         Video Capture
>>         Streaming
>>         Extended Pix Format
>> Media Driver Info:
>>     Driver name      : uvcvideo
>>     Model            : C922 Pro Stream Webcam
>>     Serial           : 6E8DF1BF
>>     Bus info         : usb-0000:00:14.0-9
>>     Media version    : 6.3.5
>>     Hardware revision: 0x00000016 (22)
>>     Driver version   : 6.3.5
>> Interface Info:
>>     ID               : 0x03000002
>>     Type             : V4L Video
>> Entity Info:
>>     ID               : 0x00000001 (1)
>>     Name             : C922 Pro Stream Webcam
>>     Function         : V4L2 I/O
>>     Flags            : default
>>     Pad 0x01000007   : 0: Sink
>>       Link 0x0200001f: from remote pad 0x100000a of entity 'Processing
>> 3' (Video Pixel Formatter): Data, Enabled, Immutable
>> Priority: 2
>> Video input : 0 (Camera 1: ok)
>> Format Video Capture:
>>     Width/Height      : 160/90
>>     Pixel Format      : 'YUYV' (YUYV 4:2:2)
>>     Field             : None
>>     Bytes per Line    : 320
>>     Size Image        : 28800
>>     Colorspace        : sRGB
>>     Transfer Function : Rec. 709
>>     YCbCr/HSV Encoding: ITU-R 601
>>     Quantization      : Default (maps to Limited Range)
>>     Flags             : Crop Capability Video Capture:
>>     Bounds      : Left 0, Top 0, Width 160, Height 90
>>     Default     : Left 0, Top 0, Width 160, Height 90
>>     Pixel Aspect: 1/1
>> Selection Video Capture: crop_default, Left 0, Top 0, Width 160,
>> Height 90, Flags: Selection Video Capture: crop_bounds, Left 0, Top 0,
>> Width 160, Height 90, Flags: Streaming Parameters Video Capture:
>>     Capabilities     : timeperframe
>>     Frames per second: 30.000 (30/1)
>>     Read buffers     : 0
>>
>> User Controls
>>
>>                      brightness 0x00980900 (int)    : min=0 max=255
>> step=1 default=128 value=128
>>                        contrast 0x00980901 (int)    : min=0 max=255
>> step=1 default=128 value=128
>>                      saturation 0x00980902 (int)    : min=0 max=255
>> step=1 default=128 value=128
>>         white_balance_automatic 0x0098090c (bool)   : default=1 value=1
>>                            gain 0x00980913 (int)    : min=0 max=255
>> step=1 default=0 value=0
>>            power_line_frequency 0x00980918 (menu)   : min=0 max=2
>> default=2 value=2 (60 Hz)
>>                 0: Disabled
>>                 1: 50 Hz
>>                 2: 60 Hz
>>       white_balance_temperature 0x0098091a (int)    : min=2000
>> max=6500 step=1 default=4000 value=4000 flags=inactive
>>                       sharpness 0x0098091b (int)    : min=0 max=255
>> step=1 default=128 value=128
>>          backlight_compensation 0x0098091c (int)    : min=0 max=1
>> step=1 default=0 value=0
>>
>> Camera Controls
>>
>>                   auto_exposure 0x009a0901 (menu)   : min=0 max=3
>> default=3 value=3 (Aperture Priority Mode)
>>                 1: Manual Mode
>>                 3: Aperture Priority Mode
>>          exposure_time_absolute 0x009a0902 (int)    : min=3 max=2047
>> step=1 default=250 value=250 flags=inactive
>>      exposure_dynamic_framerate 0x009a0903 (bool)   : default=0 value=1
>>                    pan_absolute 0x009a0908 (int)    : min=-36000
>> max=36000 step=3600 default=0 value=0
>>                   tilt_absolute 0x009a0909 (int)    : min=-36000
>> max=36000 step=3600 default=0 value=0
>>                  focus_absolute 0x009a090a (int)    : min=0 max=250
>> step=5 default=0 value=0 flags=inactive
>>      focus_automatic_continuous 0x009a090c (bool)   : default=1 value=1
>>                   zoom_absolute 0x009a090d (int)    : min=100 max=500
>> step=1 default=100 value=100
>>                       led1_mode 0x0a046d05 (menu)   : min=4 max=4
>> default=0 value=0
>>                 4:                  led1_frequency 0x0a046d06 (int)   
>> : min=0 max=255 step=1 default=0 value=255

To be sure the issue doesn't fall through the cracks unnoticed, I'm
adding it to regzbot, the Linux kernel regression tracking bot:

#regzbot ^introduced v6.1..v6.3
#regzbot title media: uvcvideo: Webcam LED control regression
#regzbot ignore-activity

This isn't a regression? This issue or a fix for it are already
discussed somewhere else? It was fixed already? You want to clarify when
the regression started to happen? Or point out I got the title or
something else totally wrong? Then just reply and tell me -- ideally
while also telling regzbot about it, as explained by the page listed in
the footer of this mail.

Developers: When fixing the issue, remember to add 'Link:' tags pointing
to the report (the parent of this mail). See page linked in footer for
details.

Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat)
--
Everything you wanna know about Linux kernel regression tracking:
https://linux-regtracking.leemhuis.info/about/#tldr
That page also explains what to do if mails like this annoy you.