mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-03 09:46:55 +07:00
V4L/DVB: uvcvideo: Restrict frame rates for Chicony CNF7129 webcam
At all frame rates except 30fps and 5fps the camera produces very dark pictures. Auto-exposure is probably disabled by the camera at all frame rates except 30fps, making them pretty unusable. Work around the problem by introducing a new RESTRICT_FRAME_RATE quirk that disables all the frame rates except the default one. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
9275b32bce
commit
86d8b6abbb
@ -486,6 +486,12 @@ static int uvc_parse_format(struct uvc_device *dev,
|
||||
max(frame->dwFrameInterval[0],
|
||||
frame->dwDefaultFrameInterval));
|
||||
|
||||
if (dev->quirks & UVC_QUIRK_RESTRICT_FRAME_RATE) {
|
||||
frame->bFrameIntervalType = 1;
|
||||
frame->dwFrameInterval[0] =
|
||||
frame->dwDefaultFrameInterval;
|
||||
}
|
||||
|
||||
uvc_trace(UVC_TRACE_DESCR, "- %ux%u (%u.%u fps)\n",
|
||||
frame->wWidth, frame->wHeight,
|
||||
10000000/frame->dwDefaultFrameInterval,
|
||||
@ -2026,6 +2032,15 @@ static struct usb_device_id uvc_ids[] = {
|
||||
.bInterfaceClass = USB_CLASS_VENDOR_SPEC,
|
||||
.bInterfaceSubClass = 1,
|
||||
.bInterfaceProtocol = 0 },
|
||||
/* Chicony CNF7129 (Asus EEE 100HE) */
|
||||
{ .match_flags = USB_DEVICE_ID_MATCH_DEVICE
|
||||
| USB_DEVICE_ID_MATCH_INT_INFO,
|
||||
.idVendor = 0x04f2,
|
||||
.idProduct = 0xb071,
|
||||
.bInterfaceClass = USB_CLASS_VIDEO,
|
||||
.bInterfaceSubClass = 1,
|
||||
.bInterfaceProtocol = 0,
|
||||
.driver_info = UVC_QUIRK_RESTRICT_FRAME_RATE },
|
||||
/* Alcor Micro AU3820 (Future Boy PC USB Webcam) */
|
||||
{ .match_flags = USB_DEVICE_ID_MATCH_DEVICE
|
||||
| USB_DEVICE_ID_MATCH_INT_INFO,
|
||||
|
@ -182,6 +182,7 @@ struct uvc_xu_control {
|
||||
#define UVC_QUIRK_IGNORE_SELECTOR_UNIT 0x00000020
|
||||
#define UVC_QUIRK_FIX_BANDWIDTH 0x00000080
|
||||
#define UVC_QUIRK_PROBE_DEF 0x00000100
|
||||
#define UVC_QUIRK_RESTRICT_FRAME_RATE 0x00000200
|
||||
|
||||
/* Format flags */
|
||||
#define UVC_FMT_FLAG_COMPRESSED 0x00000001
|
||||
|
Loading…
Reference in New Issue
Block a user