To support unbind and rebinding of subdevices rvin_s_fmt_vid_cap() needs to be called from with in the driver itself. Rename the function __rvin_s_fmt_vid_cap() and create a wrapper which can be used by vidioc_s_fmt_vid_cap. Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx> --- drivers/media/platform/rcar-vin/rcar-v4l2.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/drivers/media/platform/rcar-vin/rcar-v4l2.c b/drivers/media/platform/rcar-vin/rcar-v4l2.c index 51324c6d826f76ea..929f58b49b06154d 100644 --- a/drivers/media/platform/rcar-vin/rcar-v4l2.c +++ b/drivers/media/platform/rcar-vin/rcar-v4l2.c @@ -313,10 +313,8 @@ static int rvin_try_fmt_vid_cap(struct file *file, void *priv, &source); } -static int rvin_s_fmt_vid_cap(struct file *file, void *priv, - struct v4l2_format *f) +static int __rvin_s_fmt_vid_cap(struct rvin_dev *vin, struct v4l2_format *f) { - struct rvin_dev *vin = video_drvdata(file); struct rvin_source_fmt source; int ret; @@ -338,6 +336,14 @@ static int rvin_s_fmt_vid_cap(struct file *file, void *priv, return 0; } +static int rvin_s_fmt_vid_cap(struct file *file, void *priv, + struct v4l2_format *f) +{ + struct rvin_dev *vin = video_drvdata(file); + + return __rvin_s_fmt_vid_cap(vin, f); +} + static int rvin_g_fmt_vid_cap(struct file *file, void *priv, struct v4l2_format *f) { -- 2.11.0 -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html