Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[media] uvcvideo: Fix data type for pan/tilt control

The pan/tilt absolute control value is signed value. If minimum value
is minus, It will be changed to plus by clamp_t() as commit 64ae9958a62.
([media] uvcvideo: Fix control value clamping for unsigned integer controls).
It leads to wrong setting of the control values. For example,
when min and max are -36000 and 36000, the setting value between of this range
is always 36000. So, its data type should be changed to signed.

Signed-off-by: Chanho Min <chanho.min@lge.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>

authored by

Chanho Min and committed by
Mauro Carvalho Chehab
8ca5d2d8 60b3b4d2

+2 -2
+2 -2
drivers/media/usb/uvc/uvc_ctrl.c
··· 664 664 .size = 32, 665 665 .offset = 0, 666 666 .v4l2_type = V4L2_CTRL_TYPE_INTEGER, 667 - .data_type = UVC_CTRL_DATA_TYPE_UNSIGNED, 667 + .data_type = UVC_CTRL_DATA_TYPE_SIGNED, 668 668 }, 669 669 { 670 670 .id = V4L2_CID_TILT_ABSOLUTE, ··· 674 674 .size = 32, 675 675 .offset = 32, 676 676 .v4l2_type = V4L2_CTRL_TYPE_INTEGER, 677 - .data_type = UVC_CTRL_DATA_TYPE_UNSIGNED, 677 + .data_type = UVC_CTRL_DATA_TYPE_SIGNED, 678 678 }, 679 679 { 680 680 .id = V4L2_CID_PRIVACY,