Commit 695cbc75 authored by Paweł Anikiel's avatar Paweł Anikiel Committed by Hans Verkuil

media: i2c: ths8200: Switch dv timing callbacks to pad ops

Change all (s|g|query)_dv_timings subdev callbacks to include
a pad argument.
Signed-off-by: default avatarPaweł Anikiel <panikiel@google.com>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
parent 62e8d13b
...@@ -358,13 +358,16 @@ static void ths8200_setup(struct v4l2_subdev *sd, struct v4l2_bt_timings *bt) ...@@ -358,13 +358,16 @@ static void ths8200_setup(struct v4l2_subdev *sd, struct v4l2_bt_timings *bt)
bt->hsync, bt->vsync); bt->hsync, bt->vsync);
} }
static int ths8200_s_dv_timings(struct v4l2_subdev *sd, static int ths8200_s_dv_timings(struct v4l2_subdev *sd, unsigned int pad,
struct v4l2_dv_timings *timings) struct v4l2_dv_timings *timings)
{ {
struct ths8200_state *state = to_state(sd); struct ths8200_state *state = to_state(sd);
v4l2_dbg(1, debug, sd, "%s:\n", __func__); v4l2_dbg(1, debug, sd, "%s:\n", __func__);
if (pad != 0)
return -EINVAL;
if (!v4l2_valid_dv_timings(timings, &ths8200_timings_cap, if (!v4l2_valid_dv_timings(timings, &ths8200_timings_cap,
NULL, NULL)) NULL, NULL))
return -EINVAL; return -EINVAL;
...@@ -385,13 +388,16 @@ static int ths8200_s_dv_timings(struct v4l2_subdev *sd, ...@@ -385,13 +388,16 @@ static int ths8200_s_dv_timings(struct v4l2_subdev *sd,
return 0; return 0;
} }
static int ths8200_g_dv_timings(struct v4l2_subdev *sd, static int ths8200_g_dv_timings(struct v4l2_subdev *sd, unsigned int pad,
struct v4l2_dv_timings *timings) struct v4l2_dv_timings *timings)
{ {
struct ths8200_state *state = to_state(sd); struct ths8200_state *state = to_state(sd);
v4l2_dbg(1, debug, sd, "%s:\n", __func__); v4l2_dbg(1, debug, sd, "%s:\n", __func__);
if (pad != 0)
return -EINVAL;
*timings = state->dv_timings; *timings = state->dv_timings;
return 0; return 0;
...@@ -420,11 +426,11 @@ static int ths8200_dv_timings_cap(struct v4l2_subdev *sd, ...@@ -420,11 +426,11 @@ static int ths8200_dv_timings_cap(struct v4l2_subdev *sd,
/* Specific video subsystem operation handlers */ /* Specific video subsystem operation handlers */
static const struct v4l2_subdev_video_ops ths8200_video_ops = { static const struct v4l2_subdev_video_ops ths8200_video_ops = {
.s_stream = ths8200_s_stream, .s_stream = ths8200_s_stream,
.s_dv_timings = ths8200_s_dv_timings,
.g_dv_timings = ths8200_g_dv_timings,
}; };
static const struct v4l2_subdev_pad_ops ths8200_pad_ops = { static const struct v4l2_subdev_pad_ops ths8200_pad_ops = {
.s_dv_timings = ths8200_s_dv_timings,
.g_dv_timings = ths8200_g_dv_timings,
.enum_dv_timings = ths8200_enum_dv_timings, .enum_dv_timings = ths8200_enum_dv_timings,
.dv_timings_cap = ths8200_dv_timings_cap, .dv_timings_cap = ths8200_dv_timings_cap,
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment