forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-01-03 2f7c68cb55ecb7331f2381deb497c27155f32faf
kernel/drivers/media/i2c/imx334.c
....@@ -137,14 +137,6 @@
137137
138138 #define IMX334_NUM_SUPPLIES ARRAY_SIZE(imx334_supply_names)
139139
140
-enum imx334_max_pad {
141
- PAD0, /* link to isp */
142
- PAD1, /* link to csi wr0 | hdr x2:L x3:M */
143
- PAD2, /* link to csi wr1 | hdr x3:L */
144
- PAD3, /* link to csi wr2 | hdr x2:M x3:S */
145
- PAD_MAX,
146
-};
147
-
148140 struct regval {
149141 u16 addr;
150142 u8 val;
....@@ -851,14 +843,12 @@
851843 struct imx334 *imx334 = to_imx334(sd);
852844 const struct imx334_mode *mode = imx334->cur_mode;
853845
854
- mutex_lock(&imx334->mutex);
855846 fi->interval = mode->max_fps;
856
- mutex_unlock(&imx334->mutex);
857847
858848 return 0;
859849 }
860850
861
-static int imx334_g_mbus_config(struct v4l2_subdev *sd,
851
+static int imx334_g_mbus_config(struct v4l2_subdev *sd, unsigned int pad_id,
862852 struct v4l2_mbus_config *config)
863853 {
864854 struct imx334 *imx334 = to_imx334(sd);
....@@ -870,7 +860,7 @@
870860 V4L2_MBUS_CSI2_CONTINUOUS_CLOCK;
871861
872862 config->flags = (mode->hdr_mode == NO_HDR) ? val : (val | V4L2_MBUS_CSI2_CHANNEL_1);
873
- config->type = V4L2_MBUS_CSI2;
863
+ config->type = V4L2_MBUS_CSI2_DPHY;
874864 return 0;
875865 }
876866
....@@ -1474,7 +1464,6 @@
14741464 static const struct v4l2_subdev_video_ops imx334_video_ops = {
14751465 .s_stream = imx334_s_stream,
14761466 .g_frame_interval = imx334_g_frame_interval,
1477
- .g_mbus_config = imx334_g_mbus_config,
14781467 };
14791468
14801469 static const struct v4l2_subdev_pad_ops imx334_pad_ops = {
....@@ -1484,6 +1473,7 @@
14841473 .get_fmt = imx334_get_fmt,
14851474 .set_fmt = imx334_set_fmt,
14861475 .get_selection = imx334_get_selection,
1476
+ .get_mbus_config = imx334_g_mbus_config,
14871477 };
14881478
14891479 static const struct v4l2_subdev_ops imx334_subdev_ops = {