This is an automatic generated email to let you know that the following patch 
were queued:

Subject: media: uvcvideo: Fix power line control for Shine-Optics Camera
Author:  Ricardo Ribalda <riba...@chromium.org>
Date:    Mon Jan 8 14:04:16 2024 +0000

The device does not implement the power line frequency control
correctly. It is a UVC 1.5 device, but implements the control as a UVC
1.1 device.

Add the corresponding control mapping override.

Bus 003 Device 002: ID 3277:009e Shine-Optics Integrated Camera
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.01
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  idVendor           0x3277
  idProduct          0x009e
  bcdDevice            0.01
  iManufacturer           3 Shine-Optics
  iProduct                1 Integrated Camera
  iSerial                 2 0001

Signed-off-by: Ricardo Ribalda <riba...@chromium.org>
Reviewed-by: Sergey Senozhatsky <senozhat...@chromium.org>
Reviewed-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
Link: https://lore.kernel.org/r/20240108-shine-v2-1-ddff959da...@chromium.org
Signed-off-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>

 drivers/media/usb/uvc/uvc_driver.c | 9 +++++++++
 1 file changed, 9 insertions(+)

---

diff --git a/drivers/media/usb/uvc/uvc_driver.c 
b/drivers/media/usb/uvc/uvc_driver.c
index 91a41aa3ced2..4bf21678149e 100644
--- a/drivers/media/usb/uvc/uvc_driver.c
+++ b/drivers/media/usb/uvc/uvc_driver.c
@@ -3061,6 +3061,15 @@ static const struct usb_device_id uvc_ids[] = {
          .bInterfaceSubClass   = 1,
          .bInterfaceProtocol   = 0,
          .driver_info          = (kernel_ulong_t)&uvc_ctrl_power_line_limited 
},
+       /* Shine-Optics Integrated Camera */
+       { .match_flags          = USB_DEVICE_ID_MATCH_DEVICE
+                               | USB_DEVICE_ID_MATCH_INT_INFO,
+         .idVendor             = 0x3277,
+         .idProduct            = 0x009e,
+         .bInterfaceClass      = USB_CLASS_VIDEO,
+         .bInterfaceSubClass   = 1,
+         .bInterfaceProtocol   = UVC_PC_PROTOCOL_15,
+         .driver_info          = (kernel_ulong_t)&uvc_ctrl_power_line_uvc11 },
        /* Acer EasyCamera */
        { .match_flags          = USB_DEVICE_ID_MATCH_DEVICE
                                | USB_DEVICE_ID_MATCH_INT_INFO,

Reply via email to