]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
media: i2c: adv748x: Switch dv timing callbacks to pad ops
authorPaweł Anikiel <panikiel@google.com>
Fri, 5 Apr 2024 14:13:57 +0000 (14:13 +0000)
committerHans Verkuil <hverkuil-cisco@xs4all.nl>
Tue, 9 Apr 2024 06:15:03 +0000 (08:15 +0200)
Change all (s|g|query)_dv_timings subdev callbacks to include
a pad argument.

Signed-off-by: Paweł Anikiel <panikiel@google.com>
Tested-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
drivers/media/i2c/adv748x/adv748x-hdmi.c

index ec151dc69c239f8ee2536f1db68e0e733d3749de..a4db9bae5f792f3b4872ce01f2b0c7de7f5ba671 100644 (file)
@@ -214,7 +214,7 @@ static int adv748x_hdmi_set_video_timings(struct adv748x_state *state,
  * v4l2_subdev_video_ops
  */
 
-static int adv748x_hdmi_s_dv_timings(struct v4l2_subdev *sd,
+static int adv748x_hdmi_s_dv_timings(struct v4l2_subdev *sd, unsigned int pad,
                                     struct v4l2_dv_timings *timings)
 {
        struct adv748x_hdmi *hdmi = adv748x_sd_to_hdmi(sd);
@@ -254,7 +254,7 @@ error:
        return ret;
 }
 
-static int adv748x_hdmi_g_dv_timings(struct v4l2_subdev *sd,
+static int adv748x_hdmi_g_dv_timings(struct v4l2_subdev *sd, unsigned int pad,
                                     struct v4l2_dv_timings *timings)
 {
        struct adv748x_hdmi *hdmi = adv748x_sd_to_hdmi(sd);
@@ -269,7 +269,7 @@ static int adv748x_hdmi_g_dv_timings(struct v4l2_subdev *sd,
        return 0;
 }
 
-static int adv748x_hdmi_query_dv_timings(struct v4l2_subdev *sd,
+static int adv748x_hdmi_query_dv_timings(struct v4l2_subdev *sd, unsigned int pad,
                                         struct v4l2_dv_timings *timings)
 {
        struct adv748x_hdmi *hdmi = adv748x_sd_to_hdmi(sd);
@@ -392,9 +392,6 @@ static int adv748x_hdmi_g_pixelaspect(struct v4l2_subdev *sd,
 }
 
 static const struct v4l2_subdev_video_ops adv748x_video_ops_hdmi = {
-       .s_dv_timings = adv748x_hdmi_s_dv_timings,
-       .g_dv_timings = adv748x_hdmi_g_dv_timings,
-       .query_dv_timings = adv748x_hdmi_query_dv_timings,
        .g_input_status = adv748x_hdmi_g_input_status,
        .s_stream = adv748x_hdmi_s_stream,
        .g_pixelaspect = adv748x_hdmi_g_pixelaspect,
@@ -413,7 +410,7 @@ static int adv748x_hdmi_propagate_pixelrate(struct adv748x_hdmi *hdmi)
        if (!tx)
                return -ENOLINK;
 
-       adv748x_hdmi_query_dv_timings(&hdmi->sd, &timings);
+       adv748x_hdmi_query_dv_timings(&hdmi->sd, 0, &timings);
 
        return adv748x_csi2_set_pixelrate(tx, timings.bt.pixelclock);
 }
@@ -610,6 +607,9 @@ static const struct v4l2_subdev_pad_ops adv748x_pad_ops_hdmi = {
        .get_fmt = adv748x_hdmi_get_format,
        .get_edid = adv748x_hdmi_get_edid,
        .set_edid = adv748x_hdmi_set_edid,
+       .s_dv_timings = adv748x_hdmi_s_dv_timings,
+       .g_dv_timings = adv748x_hdmi_g_dv_timings,
+       .query_dv_timings = adv748x_hdmi_query_dv_timings,
        .dv_timings_cap = adv748x_hdmi_dv_timings_cap,
        .enum_dv_timings = adv748x_hdmi_enum_dv_timings,
 };
@@ -734,7 +734,7 @@ int adv748x_hdmi_init(struct adv748x_hdmi *hdmi)
        struct v4l2_dv_timings cea1280x720 = V4L2_DV_BT_CEA_1280X720P30;
        int ret;
 
-       adv748x_hdmi_s_dv_timings(&hdmi->sd, &cea1280x720);
+       adv748x_hdmi_s_dv_timings(&hdmi->sd, 0, &cea1280x720);
 
        /* Initialise a default 16:9 aspect ratio */
        hdmi->aspect_ratio.numerator = 16;