aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.4/950-0490-media-v4l2-mem2mem-add-new_frame-detection.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-5.4/950-0490-media-v4l2-mem2mem-add-new_frame-detection.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.4/950-0490-media-v4l2-mem2mem-add-new_frame-detection.patch69
1 files changed, 0 insertions, 69 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0490-media-v4l2-mem2mem-add-new_frame-detection.patch b/target/linux/bcm27xx/patches-5.4/950-0490-media-v4l2-mem2mem-add-new_frame-detection.patch
deleted file mode 100644
index 3c777922f1..0000000000
--- a/target/linux/bcm27xx/patches-5.4/950-0490-media-v4l2-mem2mem-add-new_frame-detection.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From 1d55acac432983ad8301f5430c42ac549b4b4c6f Mon Sep 17 00:00:00 2001
-From: Hans Verkuil <hverkuil-cisco@xs4all.nl>
-Date: Fri, 11 Oct 2019 06:32:44 -0300
-Subject: [PATCH] media: v4l2-mem2mem: add new_frame detection
-
-Commit f07602ac388723233e9e3c5a05b54baf34e0a3e9 upstream.
-
-Drivers that support VB2_V4L2_FL_SUPPORTS_M2M_HOLD_CAPTURE_BUF
-typically want to know if a new frame is started (i.e. the first
-slice is about to be processed). Add a new_frame bool to v4l2_m2m_ctx
-and set it accordingly.
-
-Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
-Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
----
- drivers/media/v4l2-core/v4l2-mem2mem.c | 11 +++++++++--
- include/media/v4l2-mem2mem.h | 7 +++++++
- 2 files changed, 16 insertions(+), 2 deletions(-)
-
---- a/drivers/media/v4l2-core/v4l2-mem2mem.c
-+++ b/drivers/media/v4l2-core/v4l2-mem2mem.c
-@@ -319,8 +319,10 @@ static void __v4l2_m2m_try_queue(struct
- goto job_unlock;
- }
-
-- if (src && dst &&
-- dst->is_held && dst->vb2_buf.copied_timestamp &&
-+ m2m_ctx->new_frame = true;
-+
-+ if (src && dst && dst->is_held &&
-+ dst->vb2_buf.copied_timestamp &&
- dst->vb2_buf.timestamp != src->vb2_buf.timestamp) {
- dst->is_held = false;
- v4l2_m2m_dst_buf_remove(m2m_ctx);
-@@ -333,6 +335,11 @@ static void __v4l2_m2m_try_queue(struct
- }
- }
-
-+ if (src && dst && (m2m_ctx->cap_q_ctx.q.subsystem_flags &
-+ VB2_V4L2_FL_SUPPORTS_M2M_HOLD_CAPTURE_BUF))
-+ m2m_ctx->new_frame = !dst->vb2_buf.copied_timestamp ||
-+ dst->vb2_buf.timestamp != src->vb2_buf.timestamp;
-+
- if (m2m_dev->m2m_ops->job_ready
- && (!m2m_dev->m2m_ops->job_ready(m2m_ctx->priv))) {
- dprintk("Driver not ready\n");
---- a/include/media/v4l2-mem2mem.h
-+++ b/include/media/v4l2-mem2mem.h
-@@ -75,6 +75,11 @@ struct v4l2_m2m_queue_ctx {
- * struct v4l2_m2m_ctx - Memory to memory context structure
- *
- * @q_lock: struct &mutex lock
-+ * @new_frame: valid in the device_run callback: if true, then this
-+ * starts a new frame; if false, then this is a new slice
-+ * for an existing frame. This is always true unless
-+ * V4L2_BUF_CAP_SUPPORTS_M2M_HOLD_CAPTURE_BUF is set, which
-+ * indicates slicing support.
- * @m2m_dev: opaque pointer to the internal data to handle M2M context
- * @cap_q_ctx: Capture (output to memory) queue context
- * @out_q_ctx: Output (input from memory) queue context
-@@ -91,6 +96,8 @@ struct v4l2_m2m_ctx {
- /* optional cap/out vb2 queues lock */
- struct mutex *q_lock;
-
-+ bool new_frame;
-+
- /* internal use only */
- struct v4l2_m2m_dev *m2m_dev;
-