aboutsummaryrefslogtreecommitdiff
path: root/target/linux/bcm27xx/patches-6.1/950-0679-drives-media-imx708-Put-HFLIP-and-VFLIP-controls-in-.patch
blob: 22bbf8830cf58d4db1633939694e5d7ab542a992 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
From c14ac3e46f17ce0c1dd2f58ed1d24c1010f577f6 Mon Sep 17 00:00:00 2001
From: Naushir Patuck <naush@raspberrypi.com>
Date: Fri, 31 Mar 2023 12:02:09 +0100
Subject: [PATCH] drives: media: imx708: Put HFLIP and VFLIP controls
 in a cluster

Create a cluster for the HVLIP and VFLIP controls so they are treated
as a single composite control.

Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
---
 drivers/media/i2c/imx708.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

--- a/drivers/media/i2c/imx708.c
+++ b/drivers/media/i2c/imx708.c
@@ -819,12 +819,14 @@ struct imx708 {
 	/* V4L2 Controls */
 	struct v4l2_ctrl *pixel_rate;
 	struct v4l2_ctrl *exposure;
-	struct v4l2_ctrl *vflip;
-	struct v4l2_ctrl *hflip;
 	struct v4l2_ctrl *vblank;
 	struct v4l2_ctrl *hblank;
 	struct v4l2_ctrl *hdr_mode;
 	struct v4l2_ctrl *link_freq;
+	struct {
+		struct v4l2_ctrl *hflip;
+		struct v4l2_ctrl *vflip;
+	};
 
 	/* Current mode */
 	const struct imx708_mode *mode;
@@ -1815,6 +1817,7 @@ static int imx708_init_controls(struct i
 
 	imx708->vflip = v4l2_ctrl_new_std(ctrl_hdlr, &imx708_ctrl_ops,
 					  V4L2_CID_VFLIP, 0, 1, 1, 0);
+	v4l2_ctrl_cluster(2, &imx708->hflip);
 
 	v4l2_ctrl_new_std_menu_items(ctrl_hdlr, &imx708_ctrl_ops,
 				     V4L2_CID_TEST_PATTERN,