Documented in 1 files:

Defined in 1 files as a function:

Referenced in 9 files:

Smatch caller information:

drivers/media/platform/chips-media/wave5/wave5-vpu-dec.c streamoff_capture() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 &q->mmap_lock

drivers/media/platform/chips-media/wave5/wave5-vpu-dec.c streamoff_output() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 &q->mmap_lock

drivers/media/platform/chips-media/wave5/wave5-vpu-dec.c wave5_vpu_dec_finish_decode() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev->irq_lock
LOCK2 &inst->state_spinlock
LOCK2 flags
HALF_LOCKED2 &dev->irq_sem
TYPE_LOCK (struct vpu_device)->irq_lock
TYPE_LOCK (struct vpu_instance)->state_spinlock

drivers/media/platform/chips-media/wave5/wave5-vpu-dec.c wave5_vpu_dec_job_ready() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &inst->state_spinlock
LOCK2 &m2m_dev->job_spinlock
LOCK2 flags
LOCK2 flags_job
TYPE_LOCK (struct v4l2_m2m_dev)->job_spinlock
TYPE_LOCK (struct vpu_instance)->state_spinlock

drivers/media/platform/qcom/iris/iris_vb2.c iris_vb2_buf_queue() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &inst->lock
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 vb2->vb2_queue->lock
TYPE_LOCK (struct iris_inst)->lock

drivers/media/v4l2-core/v4l2-mem2mem.c v4l2_m2m_qbuf() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
DATA_SOURCE 0 m2m_ctx $1
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/platform/allegro-dvt/allegro-core.c allegro_channel_cmd_start() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/platform/allegro-dvt/allegro-core.c allegro_channel_cmd_stop() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/platform/allegro-dvt/allegro-core.c allegro_stop_streaming() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 &q->mmap_lock

drivers/media/platform/imagination/e5010-jpeg-enc.c e5010_encoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/platform/imagination/e5010-jpeg-enc.c e5010_encoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/platform/imagination/e5010-jpeg-enc.c e5010_stop_streaming() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 &q->mmap_lock

drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c mxc_jpeg_decoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx->has_stopped 0-1
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c mxc_jpeg_decoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
PARAM_VALUE 0 m2m_ctx->has_stopped 0-1
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c mxc_jpeg_encoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx->has_stopped 0-1
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c mxc_jpeg_encoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
PARAM_VALUE 0 m2m_ctx->has_stopped 0-1
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/platform/nxp/imx-jpeg/mxc-jpeg.c mxc_jpeg_stop_streaming() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
PARAM_COMPARE 0 &m2m_ctx->out_q_ctx.rdy_queue == $0->out_q_ctx.rdy_queue.next
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 &q->mmap_lock

drivers/media/platform/qcom/iris/iris_buffer.c iris_vb2_buffer_done() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &inst->lock
TYPE_LOCK (struct iris_inst)->lock

drivers/media/platform/verisilicon/hantro_v4l2.c hantro_stop_streaming() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 &q->mmap_lock

drivers/media/platform/verisilicon/hantro_v4l2.c vidioc_encoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/test-drivers/vicodec/vicodec-core.c vicodec_decoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/test-drivers/vicodec/vicodec-core.c vicodec_decoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/test-drivers/vicodec/vicodec-core.c vicodec_encoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/test-drivers/vicodec/vicodec-core.c vicodec_encoder_cmd() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
HALF_LOCKED2 lock
HALF_LOCKED2 req_queue_lock

drivers/media/test-drivers/vicodec/vicodec-core.c vicodec_stop_streaming() -> v4l2_m2m_has_stopped()

Type Parameter Key Value
PARAM_VALUE 0 m2m_ctx 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dmxdev->mutex
HALF_LOCKED2 &q->mmap_lock