All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Ricardo Ribalda <ribalda@chromium.org>
Cc: Hans de Goede <hansg@kernel.org>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Edwin Gatier <edwin.gatier@protonmail.com>,
	linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
	Mauro Carvalho Chehab <mchehab+huawei@kernel.org>,
	stable@vger.kernel.org
Subject: Re: [PATCH v3 5/5] media: uvcvideo: Force UVC version for Avermedia GC515
Date: Mon, 28 Sep 2026 15:56:46 +0300	[thread overview]
Message-ID: <20260928125646.GF4406@killaraus.ideasonboard.com> (raw)
In-Reply-To: <CANiDSCuNuA+rRzj-1eczTWNswtWmOTGBc2QstZf=E9YfVvE=Wg@mail.gmail.com>

On Mon, Sep 28, 2026 at 02:40:05PM +0200, Ricardo Ribalda wrote:
> On Mon, 28 Sept 2026 at 14:38, Laurent Pinchart wrote:
> > On Fri, Sep 11, 2026 at 01:22:29PM +0000, Ricardo Ribalda wrote:
> > > The device announces itself as UVC 1.5, but it only accepts UVC 1.1
> > > controls.
> > >
> > > The camera can probably be handled by the automatic uvc_version handler,
> > > but it is more correct to add a quirk and keep some tracking of what
> > > vendors are more or less compliant. Also it might be more robust if we
> > > introduce more UVC version-dependent code.
> > >
> > > Bus 003 Device 021: ID 07ca:1515 AVerMedia Technologies, Inc. X'tra Go GC515
> > > Negotiated speed: High Speed (480Mbps)
> > > Device Descriptor:
> > >   bLength                18
> > >   bDescriptorType         1
> > >   bcdUSB               2.00
> > >   bDeviceClass          239 Miscellaneous Device
> > >   bDeviceSubClass         2 [unknown]
> > >   bDeviceProtocol         1 Interface Association
> > >   bMaxPacketSize0        64
> > >   idVendor           0x07ca AVerMedia Technologies, Inc.
> > >   idProduct          0x1515 X'tra Go GC515
> > >   bcdDevice            0.10
> > >   iManufacturer           1 AVerMedia
> > >   iProduct                2 X'tra Go GC515
> > >   iSerial                 3 5313180000221
> > >   bNumConfigurations      1
> > >   Configuration Descriptor:
> > >     bLength                 9
> > >     bDescriptorType         2
> > >     wTotalLength       0x03fd
> > >     bNumInterfaces          4
> > >     bConfigurationValue     1
> > >     iConfiguration          0
> > >     bmAttributes         0xc0
> > >       Self Powered
> > >     MaxPower              500mA
> > >     Interface Association:
> > >       bLength                 8
> > >       bDescriptorType        11
> > >       bFirstInterface         0
> > >       bInterfaceCount         2
> > >       bFunctionClass         14 Video
> > >       bFunctionSubClass       3 Video Interface Collection
> > >       bFunctionProtocol       0
> > >       iFunction               0
> > >     Interface Descriptor:
> > >       bLength                 9
> > >       bDescriptorType         4
> > >       bInterfaceNumber        0
> > >       bAlternateSetting       0
> > >       bNumEndpoints           1
> > >       bInterfaceClass        14 Video
> > >       bInterfaceSubClass      1 Video Control
> > >       bInterfaceProtocol      1
> > >       iInterface              0
> > >       VideoControl Interface Descriptor:
> > >         bLength                13
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      1 (HEADER)
> > >         bcdUVC               1.50
> > >         wTotalLength       0x0059
> > >         dwClockFrequency       30.000000MHz
> > >         bInCollection           1
> > >         baInterfaceNr( 0)       1
> > >       VideoControl Interface Descriptor:
> > >         bLength                18
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      2 (INPUT_TERMINAL)
> > >         bTerminalID             1
> > >         wTerminalType      0x0201 Camera Sensor
> > >         bAssocTerminal          0
> > >         iTerminal               0
> > >         wObjectiveFocalLengthMin      0
> > >         wObjectiveFocalLengthMax      0
> > >         wOcularFocalLength            0
> > >         bControlSize                  3
> > >         bmControls           0x00000000
> > >       VideoControl Interface Descriptor:
> > >         bLength                 9
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      3 (OUTPUT_TERMINAL)
> > >         bTerminalID             2
> > >         wTerminalType      0x0101 USB Streaming
> > >         bAssocTerminal          0
> > >         bSourceID               4
> > >         iTerminal               0
> > >       VideoControl Interface Descriptor:
> > >         bLength                 7
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      4 (SELECTOR_UNIT)
> > >         bUnitID                 3
> > >         bNrInPins               1
> > >         baSource( 0)            1
> > >         iSelector               0
> > >       VideoControl Interface Descriptor:
> > >         bLength                13
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      5 (PROCESSING_UNIT)
> > >         bUnitID                 4
> > >         bSourceID               3
> > >         wMaxMultiplier          0
> > >         bControlSize            3
> > >         bmControls     0x00000000
> > >         iProcessing             0
> > >         bmVideoStandards     0x00
> > >       VideoControl Interface Descriptor:
> > >         bLength                29
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      6 (EXTENSION_UNIT)
> > >         bUnitID                 5
> > >         guidExtensionCode         {55be8e1c-2fdb-4f7a-bd8d-b9b1108d20c3}
> > >         bNumControls           24
> > >         bNrInPins               1
> > >         baSourceID( 0)          4
> > >         bControlSize            4
> > >         bmControls( 0)       0xff
> > >         bmControls( 1)       0xff
> > >         bmControls( 2)       0xff
> > >         bmControls( 3)       0x00
> > >         iExtension              0
> > >       Endpoint Descriptor:
> > >         bLength                 7
> > >         bDescriptorType         5
> > >         bEndpointAddress     0x85  EP 5 IN
> > >         bmAttributes            3
> > >           Transfer Type            Interrupt
> > >           Synch Type               None
> > >           Usage Type               Data
> > >         wMaxPacketSize     0x0040  1x 64 bytes
> > >         bInterval               1
> > >         VideoControl Endpoint Descriptor:
> > >           bLength                 5
> > >           bDescriptorType        37
> > >           bDescriptorSubtype      3 (EP_INTERRUPT)
> > >           wMaxTransferSize       64
> > >     Interface Descriptor:
> > >       bLength                 9
> > >       bDescriptorType         4
> > >       bInterfaceNumber        1
> > >       bAlternateSetting       0
> > >       bNumEndpoints           1
> > >       bInterfaceClass        14 Video
> > >       bInterfaceSubClass      2 Video Streaming
> > >       bInterfaceProtocol      1
> > >       iInterface              0
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            16
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                  1 (INPUT_HEADER)
> > >         bNumFormats                         3
> > >         wTotalLength                   0x0303
> > >         bEndpointAddress                 0x81  EP 1 IN
> > >         bmInfo                              0
> > >         bTerminalLink                       2
> > >         bStillCaptureMethod                 1
> > >         bTriggerSupport                     0
> > >         bTriggerUsage                       0
> > >         bControlSize                        1
> > >         bmaControls( 0)                     4
> > >         bmaControls( 1)                     4
> > >         bmaControls( 2)                     0
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            28
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 16 (FORMAT_FRAME_BASED)
> > >         bFormatIndex                        1
> > >         bNumFrameDescriptors                8
> > >         guidFormat                            {34363248-0000-0010-8000-00aa00389b71}
> > >         bBitsPerPixel                      24
> > >         bDefaultFrameIndex                  1
> > >         bAspectRatioX                       0
> > >         bAspectRatioY                       0
> > >         bmInterlaceFlags                 0x00
> > >           Interlaced stream or variable: No
> > >           Fields per frame: 2 fields
> > >           Field 1 first: No
> > >           Field pattern: Field 1 only
> > >         bCopyProtect                        1
> > >         bVariableSize                     1
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            62
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         1
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           1920
> > >         wHeight                          1080
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  9
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)             83333
> > >         dwFrameInterval( 1)             83416
> > >         dwFrameInterval( 2)            166666
> > >         dwFrameInterval( 3)            166833
> > >         dwFrameInterval( 4)            200000
> > >         dwFrameInterval( 5)            333333
> > >         dwFrameInterval( 6)            333667
> > >         dwFrameInterval( 7)            400000
> > >         dwFrameInterval( 8)            416666
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            42
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         2
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           3840
> > >         wHeight                          2160
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         333333
> > >         bFrameIntervalType                  4
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            333333
> > >         dwFrameInterval( 1)            333667
> > >         dwFrameInterval( 2)            400000
> > >         dwFrameInterval( 3)            416666
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            34
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         3
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           2560
> > >         wHeight                          1440
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  2
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            166833
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            34
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         4
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           1280
> > >         wHeight                           800
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  2
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            166833
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            38
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         5
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           1280
> > >         wHeight                           720
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  3
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            166833
> > >         dwFrameInterval( 2)            200000
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            34
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         6
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                            720
> > >         wHeight                           576
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         200000
> > >         bFrameIntervalType                  2
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            200000
> > >         dwFrameInterval( 1)            400000
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            42
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         7
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                            720
> > >         wHeight                           480
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  4
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            166833
> > >         dwFrameInterval( 2)            333333
> > >         dwFrameInterval( 3)            333667
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            34
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         8
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                            640
> > >         wHeight                           480
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  2
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            166833
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                             6
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 13 (COLORFORMAT)
> > >         bColorPrimaries                     0 (Unspecified)
> > >         bTransferCharacteristics            0 (Unspecified)
> > >         bMatrixCoefficients                 0 (Unspecified)
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            28
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 16 (FORMAT_FRAME_BASED)
> > >         bFormatIndex                        2
> > >         bNumFrameDescriptors                8
> > >         guidFormat                            {43564548-0000-0010-8000-00aa00389b71}
> > >         bBitsPerPixel                      24
> > >         bDefaultFrameIndex                  1
> > >         bAspectRatioX                       0
> > >         bAspectRatioY                       0
> > >         bmInterlaceFlags                 0x00
> > >           Interlaced stream or variable: No
> > >           Fields per frame: 2 fields
> > >           Field 1 first: No
> > >           Field pattern: Field 1 only
> > >         bCopyProtect                        1
> > >         bVariableSize                     1
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            62
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         1
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           1920
> > >         wHeight                          1080
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  9
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)             83333
> > >         dwFrameInterval( 1)             83416
> > >         dwFrameInterval( 2)            166666
> > >         dwFrameInterval( 3)            166833
> > >         dwFrameInterval( 4)            200000
> > >         dwFrameInterval( 5)            333333
> > >         dwFrameInterval( 6)            333667
> > >         dwFrameInterval( 7)            400000
> > >         dwFrameInterval( 8)            416666
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            42
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         2
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           3840
> > >         wHeight                          2160
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         333333
> > >         bFrameIntervalType                  4
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            333333
> > >         dwFrameInterval( 1)            333667
> > >         dwFrameInterval( 2)            400000
> > >         dwFrameInterval( 3)            416666
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            34
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         3
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           2560
> > >         wHeight                          1440
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  2
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            166833
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            34
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         4
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           1280
> > >         wHeight                           800
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  2
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            166833
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            38
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         5
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           1280
> > >         wHeight                           720
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  3
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            166833
> > >         dwFrameInterval( 2)            200000
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            34
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         6
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                            720
> > >         wHeight                           576
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         200000
> > >         bFrameIntervalType                  2
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            200000
> > >         dwFrameInterval( 1)            400000
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            42
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         7
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                            720
> > >         wHeight                           480
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  4
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            166833
> > >         dwFrameInterval( 2)            333333
> > >         dwFrameInterval( 3)            333667
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            34
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 17 (FRAME_FRAME_BASED)
> > >         bFrameIndex                         8
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                            640
> > >         wHeight                           480
> > >         dwMinBitRate                 33554432
> > >         dwMaxBitRate                268435456
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  2
> > >         dwBytesPerLine                      0
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            166833
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                             6
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 13 (COLORFORMAT)
> > >         bColorPrimaries                     0 (Unspecified)
> > >         bTransferCharacteristics            0 (Unspecified)
> > >         bMatrixCoefficients                 0 (Unspecified)
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            11
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                  6 (FORMAT_MJPEG)
> > >         bFormatIndex                        3
> > >         bNumFrameDescriptors                1
> > >         bFlags                              0
> > >           Fixed-size samples: No
> > >         bDefaultFrameIndex                  1
> > >         bAspectRatioX                       0
> > >         bAspectRatioY                       0
> > >         bmInterlaceFlags                 0x00
> > >           Interlaced stream or variable: No
> > >           Fields per frame: 1 fields
> > >           Field 1 first: No
> > >           Field pattern: Field 1 only
> > >         bCopyProtect                        1
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                            30
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                  7 (FRAME_MJPEG)
> > >         bFrameIndex                         1
> > >         bmCapabilities                   0x01
> > >           Still image supported
> > >         wWidth                           1920
> > >         wHeight                          1080
> > >         dwMinBitRate                314572800
> > >         dwMaxBitRate                314572800
> > >         dwMaxVideoFrameBufferSize     4147200
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  1
> > >         dwFrameInterval( 0)            166666
> > >       VideoStreaming Interface Descriptor:
> > >         bLength                             6
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                 13 (COLORFORMAT)
> > >         bColorPrimaries                     0 (Unspecified)
> > >         bTransferCharacteristics            0 (Unspecified)
> > >         bMatrixCoefficients                 0 (Unspecified)
> > >       Endpoint Descriptor:
> > >         bLength                 7
> > >         bDescriptorType         5
> > >         bEndpointAddress     0x81  EP 1 IN
> > >         bmAttributes            2
> > >           Transfer Type            Bulk
> > >           Synch Type               None
> > >           Usage Type               Data
> > >         wMaxPacketSize     0x0200  1x 512 bytes
> > >         bInterval               0
> > >     Interface Association:
> > >       bLength                 8
> > >       bDescriptorType        11
> > >       bFirstInterface         2
> > >       bInterfaceCount         2
> > >       bFunctionClass          1 Audio
> > >       bFunctionSubClass       2 Streaming
> > >       bFunctionProtocol       0
> > >       iFunction               0
> > >     Interface Descriptor:
> > >       bLength                 9
> > >       bDescriptorType         4
> > >       bInterfaceNumber        2
> > >       bAlternateSetting       0
> > >       bNumEndpoints           0
> > >       bInterfaceClass         1 Audio
> > >       bInterfaceSubClass      1 Control Device
> > >       bInterfaceProtocol      0
> > >       iInterface              0
> > >       AudioControl Interface Descriptor:
> > >         bLength                 9
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      1 (HEADER)
> > >         bcdADC               1.00
> > >         wTotalLength       0x0026
> > >         bInCollection           1
> > >         baInterfaceNr(0)        3
> > >       AudioControl Interface Descriptor:
> > >         bLength                12
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      2 (INPUT_TERMINAL)
> > >         bTerminalID             1
> > >         wTerminalType      0x0602 Digital Audio Interface
> > >         bAssocTerminal          0
> > >         bNrChannels             2
> > >         wChannelConfig     0x0003
> > >           Left Front (L)
> > >           Right Front (R)
> > >         iChannelNames           0
> > >         iTerminal               0
> > >       AudioControl Interface Descriptor:
> > >         bLength                 9
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      3 (OUTPUT_TERMINAL)
> > >         bTerminalID             2
> > >         wTerminalType      0x0101 USB Streaming
> > >         bAssocTerminal          0
> > >         bSourceID               3
> > >         iTerminal               0
> > >       AudioControl Interface Descriptor:
> > >         bLength                 8
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      6 (FEATURE_UNIT)
> > >         bUnitID                 3
> > >         bSourceID               1
> > >         bControlSize            1
> > >         bmaControls(0)       0x03
> > >           Mute Control
> > >           Volume Control
> > >         iFeature                0
> > >     Interface Descriptor:
> > >       bLength                 9
> > >       bDescriptorType         4
> > >       bInterfaceNumber        3
> > >       bAlternateSetting       0
> > >       bNumEndpoints           0
> > >       bInterfaceClass         1 Audio
> > >       bInterfaceSubClass      2 Streaming
> > >       bInterfaceProtocol      0
> > >       iInterface              0
> > >     Interface Descriptor:
> > >       bLength                 9
> > >       bDescriptorType         4
> > >       bInterfaceNumber        3
> > >       bAlternateSetting       1
> > >       bNumEndpoints           1
> > >       bInterfaceClass         1 Audio
> > >       bInterfaceSubClass      2 Streaming
> > >       bInterfaceProtocol      0
> > >       iInterface              0
> > >       AudioStreaming Interface Descriptor:
> > >         bLength                 7
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      1 (AS_GENERAL)
> > >         bTerminalLink           2
> > >         bDelay                  1 frames
> > >         wFormatTag         0x0001 PCM
> > >       AudioStreaming Interface Descriptor:
> > >         bLength                11
> > >         bDescriptorType        36
> > >         bDescriptorSubtype      2 (FORMAT_TYPE)
> > >         bFormatType             1 (FORMAT_TYPE_I)
> > >         bNrChannels             2
> > >         bSubframeSize           2
> > >         bBitResolution         16
> > >         bSamFreqType            1 Discrete
> > >         tSamFreq[ 0]        48000
> > >       Endpoint Descriptor:
> > >         bLength                 9
> > >         bDescriptorType         5
> > >         bEndpointAddress     0x83  EP 3 IN
> > >         bmAttributes            5
> > >           Transfer Type            Isochronous
> > >           Synch Type               Asynchronous
> > >           Usage Type               Data
> > >         wMaxPacketSize     0x00c4  1x 196 bytes
> > >         bInterval               4
> > >         bRefresh                0
> > >         bSynchAddress           0
> > >         AudioStreaming Endpoint Descriptor:
> > >           bLength                 7
> > >           bDescriptorType        37
> > >           bDescriptorSubtype      1 (EP_GENERAL)
> > >           bmAttributes         0x01
> > >             Sampling Frequency
> > >           bLockDelayUnits         0 Undefined
> > >           wLockDelay         0x0000
> > >
> > > Cc: stable@vger.kernel.org
> > > Fixes: b400b6f28af0 ("media: uvcvideo: Force UVC version to 1.0a for 1bcf:0b40") # When version overwritte was added
> >
> > That doesn't seem quite right, this patch doesn't fix that commit. I
> > think you can omit the Fixes tag. With that,
> 
> Without the Fixes tag, how to I let stable know until what version it
> should backport the patch?

I think that would be

Cc: stable@vger.kernel.org # 5.12.x

See Documentation/process/stable-kernel-rules.rst, Option 1:

* Point out kernel version prerequisites::

    Cc: <stable@vger.kernel.org> # 3.3.x

  The tag has the meaning of::

    git cherry-pick <this commit>

  For each "-stable" tree starting with the specified version.

  Note, such tagging is unnecessary if the stable team can derive the
  appropriate versions from Fixes: tags.

No need to resend just for this. If you're fine with the above it can be
adjusted when applying.

> > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> >
> > > Reported-by: Edwin Gatier <edwin.gatier@protonmail.com>
> > > Closes: https://lore.kernel.org/linux-media/CANiDSCu4AW=JZ9FS+Ny=DK_+LqqytGvSe+V6aVncRiGRiyDMfA@mail.gmail.com/T/#me584c35c4b523ac455925a1590a3de8efc354349
> > > Tested-by: Edwin Gatier <edwin.gatier@protonmail.com>
> > > Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
> > > ---
> > >  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 adec9d1aa653..bbfc409c5167 100644
> > > --- a/drivers/media/usb/uvc/uvc_driver.c
> > > +++ b/drivers/media/usb/uvc/uvc_driver.c
> > > @@ -2847,6 +2847,17 @@ static const struct usb_device_id uvc_ids[] = {
> > >         .bInterfaceSubClass   = 1,
> > >         .bInterfaceProtocol   = 0,
> > >         .driver_info          = (kernel_ulong_t)&uvc_quirk_fix_bandwidth },
> > > +     /* Avermedia GC515 */
> > > +     { .match_flags          = USB_DEVICE_ID_MATCH_DEVICE
> > > +                             | USB_DEVICE_ID_MATCH_INT_INFO,
> > > +       .idVendor             = 0x07ca,
> > > +       .idProduct            = 0x1515,
> > > +       .bInterfaceClass      = USB_CLASS_VIDEO,
> > > +       .bInterfaceSubClass   = 1,
> > > +       .bInterfaceProtocol   = UVC_PC_PROTOCOL_15,
> > > +       .driver_info          = (kernel_ulong_t)&(const struct uvc_device_info){
> > > +             .uvc_version = 0x0110,
> > > +       } },
> > >       /* ViMicro Vega */
> > >       { .match_flags          = USB_DEVICE_ID_MATCH_DEVICE
> > >                               | USB_DEVICE_ID_MATCH_INT_INFO,

-- 
Regards,

Laurent Pinchart

      reply	other threads:[~2026-09-28 12:56 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-11 13:22 [PATCH v3 0/5] media: uvcvideo: Automatically handle invalid uvc_versions Ricardo Ribalda
2026-09-11 13:22 ` [PATCH v3 1/5] media: uvcvideo: uvc_warn should warn not info Ricardo Ribalda
2026-09-28 11:07   ` Hans de Goede
2026-09-28 12:08   ` Laurent Pinchart
2026-09-11 13:22 ` [PATCH v3 2/5] media: uvcvideo: Use uvc_warn_once when it make sense Ricardo Ribalda
2026-09-28 11:07   ` Hans de Goede
2026-09-28 12:10   ` Laurent Pinchart
2026-09-11 13:22 ` [PATCH v3 3/5] media: uvcvideo: Automatically handle cameras with invalid uvc_version Ricardo Ribalda
2026-09-28 11:13   ` Hans de Goede
2026-09-28 12:52   ` Laurent Pinchart
2026-09-28 13:22     ` Ricardo Ribalda
2026-09-28 13:35       ` Laurent Pinchart
2026-09-28 13:56         ` Ricardo Ribalda
2026-09-28 13:44       ` Ricardo Ribalda
2026-09-11 13:22 ` [PATCH v3 4/5] media: uvcvideo: Do not parse bmVideoStandards Ricardo Ribalda
2026-09-28 11:33   ` Hans de Goede
2026-09-11 13:22 ` [PATCH v3 5/5] media: uvcvideo: Force UVC version for Avermedia GC515 Ricardo Ribalda
2026-09-28 12:37   ` Hans de Goede
2026-09-28 12:38   ` Laurent Pinchart
2026-09-28 12:40     ` Ricardo Ribalda
2026-09-28 12:56       ` Laurent Pinchart [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260928125646.GF4406@killaraus.ideasonboard.com \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=edwin.gatier@protonmail.com \
    --cc=hansg@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab+huawei@kernel.org \
    --cc=mchehab@kernel.org \
    --cc=ribalda@chromium.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.