summaryrefslogtreecommitdiffstats
path: root/drivers/media/platform/renesas/rcar-isp.c
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com>2025-01-20 15:10:39 +0200
committerHans Verkuil <hverkuil@xs4all.nl>2025-03-04 13:35:33 +0100
commitf562fc5f486840b3198e3bd14c511c7b07bd38b9 (patch)
treeaa76d2fb9cc0bc1e7c394167eed959b7fce19ba3 /drivers/media/platform/renesas/rcar-isp.c
parent178c1be5847621f4db152daf99944f1553b786e8 (diff)
downloadlinux-f562fc5f486840b3198e3bd14c511c7b07bd38b9.tar.gz
linux-f562fc5f486840b3198e3bd14c511c7b07bd38b9.tar.bz2
linux-f562fc5f486840b3198e3bd14c511c7b07bd38b9.zip
media: rcar-isp: Use v4l2_subdev_{enable|disable}_streams()
Use v4l2_subdev_{enable|disable}_streams() instead of calling s_stream op directly. This allows the called subdev to drop the legacy s_stream op. Signed-off-by: Tomi Valkeinen <tomi.valkeinen+renesas@ideasonboard.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Diffstat (limited to 'drivers/media/platform/renesas/rcar-isp.c')
-rw-r--r--drivers/media/platform/renesas/rcar-isp.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/media/platform/renesas/rcar-isp.c b/drivers/media/platform/renesas/rcar-isp.c
index 121fa7524ee1..385fafb2318f 100644
--- a/drivers/media/platform/renesas/rcar-isp.c
+++ b/drivers/media/platform/renesas/rcar-isp.c
@@ -169,6 +169,7 @@ struct rcar_isp {
struct v4l2_async_notifier notifier;
struct v4l2_subdev *remote;
+ unsigned int remote_pad;
struct mutex lock; /* Protects mf and stream_count. */
struct v4l2_mbus_framefmt mf;
@@ -267,7 +268,8 @@ static int risp_start(struct rcar_isp *isp)
/* Start ISP. */
risp_write(isp, ISPSTART_REG, ISPSTART_START);
- ret = v4l2_subdev_call(isp->remote, video, s_stream, 1);
+ ret = v4l2_subdev_enable_streams(isp->remote, isp->remote_pad,
+ BIT_ULL(0));
if (ret)
risp_power_off(isp);
@@ -276,7 +278,7 @@ static int risp_start(struct rcar_isp *isp)
static void risp_stop(struct rcar_isp *isp)
{
- v4l2_subdev_call(isp->remote, video, s_stream, 0);
+ v4l2_subdev_disable_streams(isp->remote, isp->remote_pad, BIT_ULL(0));
/* Stop ISP. */
risp_write(isp, ISPSTART_REG, ISPSTART_STOP);
@@ -387,6 +389,7 @@ static int risp_notify_bound(struct v4l2_async_notifier *notifier,
}
isp->remote = subdev;
+ isp->remote_pad = pad;
dev_dbg(isp->dev, "Bound %s pad: %d\n", subdev->name, pad);