mirror of https://lore.kernel.org/lkml/
 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®