summaryrefslogtreecommitdiff
path: root/drivers/media/platform/qcom/venus/hfi.c
diff options
context:
space:
mode:
authorStanimir Varbanov <stanimir.varbanov@linaro.org>2017-10-13 16:13:17 +0200
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2017-10-27 14:01:09 +0200
commite69b987a97599456b95b5fef4aca8dcdb1505aea (patch)
tree316b84366bf7aff7e84d4d7fc2810140b10f4678 /drivers/media/platform/qcom/venus/hfi.c
parent3863360c15da47e18d894268ad6182fdc7caf0c7 (diff)
media: venus: reimplement decoder stop command
This addresses the wrong behavior of decoder stop command by rewriting it. These new implementation enqueue an empty buffer on the decoder input buffer queue to signal end-of-stream. The client should stop queuing buffers on the V4L2 Output queue and continue queuing/dequeuing buffers on Capture queue. This process will continue until the client receives a buffer with V4L2_BUF_FLAG_LAST flag raised, which means that this is last decoded buffer with data. Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org> Tested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Cc: <stable@vger.kernel.org> # for v4.13 and up Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media/platform/qcom/venus/hfi.c')
-rw-r--r--drivers/media/platform/qcom/venus/hfi.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/platform/qcom/venus/hfi.c b/drivers/media/platform/qcom/venus/hfi.c
index c09490876516..ba29fd4d4984 100644
--- a/drivers/media/platform/qcom/venus/hfi.c
+++ b/drivers/media/platform/qcom/venus/hfi.c
@@ -484,6 +484,7 @@ int hfi_session_process_buf(struct venus_inst *inst, struct hfi_frame_data *fd)
return -EINVAL;
}
+EXPORT_SYMBOL_GPL(hfi_session_process_buf);
irqreturn_t hfi_isr_thread(int irq, void *dev_id)
{