media: s5p-g2d: Implement wait_prepare and wait_finish

This driver is currently specifying a vb2_queue lock,
which means it straightforward to implement wait_prepare
and wait_finish.

Having these callbacks releases the queue lock while blocking,
which improves latency by allowing for example streamoff
or qbuf operations while waiting in dqbuf.

Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
This commit is contained in:
Ezequiel Garcia 2018-06-15 15:07:26 -04:00 committed by Mauro Carvalho Chehab
parent f1db5d978d
commit b53e19e161

View File

@ -142,6 +142,8 @@ static const struct vb2_ops g2d_qops = {
.queue_setup = g2d_queue_setup, .queue_setup = g2d_queue_setup,
.buf_prepare = g2d_buf_prepare, .buf_prepare = g2d_buf_prepare,
.buf_queue = g2d_buf_queue, .buf_queue = g2d_buf_queue,
.wait_prepare = vb2_ops_wait_prepare,
.wait_finish = vb2_ops_wait_finish,
}; };
static int queue_init(void *priv, struct vb2_queue *src_vq, static int queue_init(void *priv, struct vb2_queue *src_vq,