media: vb2/au0828: move the v4l_vb2q_enable_media_source to the au0828 driver
With the new prepare_streaming op it is possible to move the ugly v4l_vb2q_enable_media_source() call in vb2_core_streamon to the driver. It was called incorrectly in vb2 as well: it was only called if sufficient buffers were queued at STREAMON time, but not if more buffers were queued later. This was not an issue with the au0828 driver since it never set min_buffers_needed. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
Родитель
a10b215325
Коммит
c4cd4c8bd7
|
@ -2121,9 +2121,6 @@ int vb2_core_streamon(struct vb2_queue *q, unsigned int type)
|
|||
* are available.
|
||||
*/
|
||||
if (q->queued_count >= q->min_buffers_needed) {
|
||||
ret = v4l_vb2q_enable_media_source(q);
|
||||
if (ret)
|
||||
goto unprepare;
|
||||
ret = vb2_start_streaming(q);
|
||||
if (ret)
|
||||
goto unprepare;
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include <linux/module.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/slab.h>
|
||||
#include <media/v4l2-mc.h>
|
||||
|
||||
/* ------------------------------------------------------------------ */
|
||||
|
||||
|
@ -70,6 +71,7 @@ const struct vb2_ops au0828_vbi_qops = {
|
|||
.queue_setup = vbi_queue_setup,
|
||||
.buf_prepare = vbi_buffer_prepare,
|
||||
.buf_queue = vbi_buffer_queue,
|
||||
.prepare_streaming = v4l_vb2q_enable_media_source,
|
||||
.start_streaming = au0828_start_analog_streaming,
|
||||
.stop_streaming = au0828_stop_vbi_streaming,
|
||||
.wait_prepare = vb2_ops_wait_prepare,
|
||||
|
|
|
@ -915,6 +915,7 @@ static const struct vb2_ops au0828_video_qops = {
|
|||
.queue_setup = queue_setup,
|
||||
.buf_prepare = buffer_prepare,
|
||||
.buf_queue = buffer_queue,
|
||||
.prepare_streaming = v4l_vb2q_enable_media_source,
|
||||
.start_streaming = au0828_start_analog_streaming,
|
||||
.stop_streaming = au0828_stop_streaming,
|
||||
.wait_prepare = vb2_ops_wait_prepare,
|
||||
|
|
Загрузка…
Ссылка в новой задаче