media: i2c: imx412: Drop check for reentrant .s_stream()
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Thu, 14 Sep 2023 18:16:19 +0000 (21:16 +0300)
committerHans Verkuil <hverkuil-cisco@xs4all.nl>
Wed, 27 Sep 2023 07:39:58 +0000 (09:39 +0200)
The subdev .s_stream() operation shall not be called to start streaming
on an already started subdev, or stop streaming on a stopped subdev.
Remove the check that guards against that condition.

The streaming field of the driver's private structure is now unused,
drop it as well.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
drivers/media/i2c/imx412.c

index c7e862ae4040f58214de303e1373e1f63ed18b7f..962b3136c31ee2a50b84de2fa8fdc67aa9ee5b32 100644 (file)
@@ -127,7 +127,6 @@ static const char * const imx412_supply_names[] = {
  * @vblank: Vertical blanking in lines
  * @cur_mode: Pointer to current selected sensor mode
  * @mutex: Mutex for serializing sensor controls
- * @streaming: Flag indicating streaming state
  */
 struct imx412 {
        struct device *dev;
@@ -149,7 +148,6 @@ struct imx412 {
        u32 vblank;
        const struct imx412_mode *cur_mode;
        struct mutex mutex;
-       bool streaming;
 };
 
 static const s64 link_freq[] = {
@@ -857,11 +855,6 @@ static int imx412_set_stream(struct v4l2_subdev *sd, int enable)
 
        mutex_lock(&imx412->mutex);
 
-       if (imx412->streaming == enable) {
-               mutex_unlock(&imx412->mutex);
-               return 0;
-       }
-
        if (enable) {
                ret = pm_runtime_resume_and_get(imx412->dev);
                if (ret)
@@ -875,8 +868,6 @@ static int imx412_set_stream(struct v4l2_subdev *sd, int enable)
                pm_runtime_put(imx412->dev);
        }
 
-       imx412->streaming = enable;
-
        mutex_unlock(&imx412->mutex);
 
        return 0;