[PATCH v9 06/13] media: rockchip: add a driver for the rockchip camera interface
Mehdi Djait
mehdi.djait at linux.intel.com
Mon Jun 30 03:12:04 PDT 2025
Hello Michael,
I think this is the last missing detail :) The series looks good! Thank you
for the all the work!
On Wed, Jun 18, 2025 at 05:38:01PM +0200, Michael Riesch via B4 Relay wrote:
> From: Michael Riesch <michael.riesch at collabora.com>
[...]
> +static void rkcif_stream_stop_streaming(struct vb2_queue *queue)
> +{
> + struct rkcif_stream *stream = queue->drv_priv;
> + struct rkcif_device *rkcif = stream->rkcif;
> + u64 mask;
> + int ret;
> +
> + mask = BIT_ULL(stream->id);
> + v4l2_subdev_disable_streams(&stream->interface->sd, RKCIF_IF_PAD_SRC,
> + mask);
> +
> + stream->stopping = true;
> + ret = wait_event_timeout(stream->wq_stopped, !stream->stopping,
> + msecs_to_jiffies(1000));
Checking for stream->stopping is TRUE then waking up wq_stopped
wait_queue is being handled in rkcif_dvp_isr().
It is not the case of rkcif_mipi_isr() so we are always waiting for the
timeout when stopping the stream with the mipi interface.
> +
> + if (!ret && stream->stop_streaming)
> + stream->stop_streaming(stream);
> +
> + pm_runtime_put(rkcif->dev);
> +
> + rkcif_stream_return_all_buffers(stream, VB2_BUF_STATE_ERROR);
> +
> + video_device_pipeline_stop(&stream->vdev);
> +}
--
Kind Regards
Mehdi Djait
More information about the linux-arm-kernel
mailing list