diff --git a/drivers/media/platform/rockchip/isp/rkisp.c b/drivers/media/platform/rockchip/isp/rkisp.c index 646bb3ff7946..6a3525843306 100644 --- a/drivers/media/platform/rockchip/isp/rkisp.c +++ b/drivers/media/platform/rockchip/isp/rkisp.c @@ -1614,11 +1614,13 @@ static int rkisp_isp_sd_s_power(struct v4l2_subdev *sd, int on) v4l2_dbg(1, rkisp_debug, &isp_dev->v4l2_dev, "%s on:%d\n", __func__, on); - if (on) + if (on) { + if (isp_dev->isp_ver == ISP_V20) + kfifo_reset(&isp_dev->csi_dev.rdbk_kfifo); ret = pm_runtime_get_sync(isp_dev->dev); - else + } else { ret = pm_runtime_put(isp_dev->dev); - + } return ret; }