mirror of
https://github.com/armbian/build.git
synced 2025-08-09 20:56:57 +02:00
* waiter_local_repo: Fixed incomplete logic
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* A series of patches for sunxi v5.15.16
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* DEBUG
* check 70
* check 101
* Add 101 Armbian patches as series
Patches are renamed using the logic of the file structure
and the essence of the changes, sorted in the order
of their receipt. Fixed a lot of incorrect overlay
of some pieces in patches. Several small patches are
combined, because they changed one file.
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Remove old patches that have been reworked into a series
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Fix for apply to v5.15.17
* Two Bluetooth-BTRTL patches for sunxi will be applied in the series.
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* check 113
* Fix print output
* Revert "DEBUG"
This reverts commit 49e2c7fdc0
.
58 lines
2.2 KiB
Diff
58 lines
2.2 KiB
Diff
From 93b5b1670e96f2a3a8dd1d5a9ac9d2b38c295917 Mon Sep 17 00:00:00 2001
|
|
From: Jernej Skrabec <jernej.skrabec@siol.net>
|
|
Date: Sat, 9 Nov 2019 13:06:15 +0100
|
|
Subject: [PATCH 048/101] drv:media: cedrus: Add callback for buffer cleanup
|
|
|
|
Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net>
|
|
---
|
|
drivers/staging/media/sunxi/cedrus/cedrus.h | 1 +
|
|
drivers/staging/media/sunxi/cedrus/cedrus_video.c | 13 +++++++++++++
|
|
2 files changed, 14 insertions(+)
|
|
|
|
diff --git a/drivers/staging/media/sunxi/cedrus/cedrus.h b/drivers/staging/media/sunxi/cedrus/cedrus.h
|
|
index c790963ef..35faf42f2 100644
|
|
--- a/drivers/staging/media/sunxi/cedrus/cedrus.h
|
|
+++ b/drivers/staging/media/sunxi/cedrus/cedrus.h
|
|
@@ -166,6 +166,7 @@ struct cedrus_dec_ops {
|
|
int (*start)(struct cedrus_ctx *ctx);
|
|
void (*stop)(struct cedrus_ctx *ctx);
|
|
void (*trigger)(struct cedrus_ctx *ctx);
|
|
+ void (*buf_cleanup)(struct cedrus_ctx *ctx, struct cedrus_buffer *buf);
|
|
};
|
|
|
|
struct cedrus_variant {
|
|
diff --git a/drivers/staging/media/sunxi/cedrus/cedrus_video.c b/drivers/staging/media/sunxi/cedrus/cedrus_video.c
|
|
index 6e1486987..80e33775b 100644
|
|
--- a/drivers/staging/media/sunxi/cedrus/cedrus_video.c
|
|
+++ b/drivers/staging/media/sunxi/cedrus/cedrus_video.c
|
|
@@ -469,6 +469,18 @@ static int cedrus_buf_prepare(struct vb2_buffer *vb)
|
|
return 0;
|
|
}
|
|
|
|
+static void cedrus_buf_cleanup(struct vb2_buffer *vb)
|
|
+{
|
|
+ struct vb2_queue *vq = vb->vb2_queue;
|
|
+ struct cedrus_ctx *ctx = vb2_get_drv_priv(vq);
|
|
+ struct cedrus_dev *dev = ctx->dev;
|
|
+ struct cedrus_dec_ops *ops = dev->dec_ops[ctx->current_codec];
|
|
+
|
|
+ if (!V4L2_TYPE_IS_OUTPUT(vq->type) && ops->buf_cleanup)
|
|
+ ops->buf_cleanup(ctx,
|
|
+ vb2_to_cedrus_buffer(vq->bufs[vb->index]));
|
|
+}
|
|
+
|
|
static int cedrus_start_streaming(struct vb2_queue *vq, unsigned int count)
|
|
{
|
|
struct cedrus_ctx *ctx = vb2_get_drv_priv(vq);
|
|
@@ -551,6 +563,7 @@ static void cedrus_buf_request_complete(struct vb2_buffer *vb)
|
|
static struct vb2_ops cedrus_qops = {
|
|
.queue_setup = cedrus_queue_setup,
|
|
.buf_prepare = cedrus_buf_prepare,
|
|
+ .buf_cleanup = cedrus_buf_cleanup,
|
|
.buf_queue = cedrus_buf_queue,
|
|
.buf_out_validate = cedrus_buf_out_validate,
|
|
.buf_request_complete = cedrus_buf_request_complete,
|
|
--
|
|
2.31.1
|
|
|