[PATCH 2/2] media: v4l2: map UVC_CT_ROLL_ABSOLUTE_CONTROL

From: Gergo Koteles
Date: Wed Jun 12 2024 - 14:33:41 EST


Some new UVC cameras can report whether they are mounted in 'portrait
mode'.

Current roll degrees (-90, 0, 90, 180) are reported with
UVC_CT_ROLL_ABSOLUTE_CONTROL.

Map UVC_CT_ROLL_ABSOLUTE_CONTROL to V4L2_CID_ROLL_ABSOLUTE to
make it available to userspace.

Signed-off-by: Gergo Koteles <soyer@xxxxxx>
---
drivers/media/usb/uvc/uvc_ctrl.c | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/drivers/media/usb/uvc/uvc_ctrl.c b/drivers/media/usb/uvc/uvc_ctrl.c
index 4b685f883e4d..bc3272b6ceb1 100644
--- a/drivers/media/usb/uvc/uvc_ctrl.c
+++ b/drivers/media/usb/uvc/uvc_ctrl.c
@@ -748,6 +748,15 @@ static const struct uvc_control_mapping uvc_ctrl_mappings[] = {
.v4l2_type = V4L2_CTRL_TYPE_BOOLEAN,
.data_type = UVC_CTRL_DATA_TYPE_BOOLEAN,
},
+ {
+ .id = V4L2_CID_ROLL_ABSOLUTE,
+ .entity = UVC_GUID_UVC_CAMERA,
+ .selector = UVC_CT_ROLL_ABSOLUTE_CONTROL,
+ .size = 16,
+ .offset = 0,
+ .v4l2_type = V4L2_CTRL_TYPE_INTEGER,
+ .data_type = UVC_CTRL_DATA_TYPE_SIGNED,
+ },
};

const struct uvc_control_mapping uvc_ctrl_power_line_mapping_limited = {
--
2.45.2