diff --git a/drivers/media/platform/rockchip/cif/capture.c b/drivers/media/platform/rockchip/cif/capture.c index f97e9e7289a5..014dd71763a3 100644 --- a/drivers/media/platform/rockchip/cif/capture.c +++ b/drivers/media/platform/rockchip/cif/capture.c @@ -6324,8 +6324,10 @@ void rkcif_do_stop_stream(struct rkcif_stream *stream, } else { stream->stopping = true; } - } else { + } else if (dev->sditf[0] && (!dev->sditf[0]->is_toisp_off)) { stream->stopping = true; + } else { + rkcif_stream_stop(stream); } if (stream->stopping == true) { if (mode == RKCIF_STREAM_MODE_TOISP && dev->sditf[0]->is_toisp_off)