[media] solo6x10: fix sequence handling
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
9a8bfe9fe9
commit
15513c12e3
3 changed files with 6 additions and 2 deletions
|
@ -173,6 +173,7 @@ struct solo_enc_dev {
|
|||
|
||||
u32 fmt;
|
||||
enum solo_enc_types type;
|
||||
u32 sequence;
|
||||
struct vb2_queue vidq;
|
||||
struct list_head vidq_active;
|
||||
int desc_count;
|
||||
|
@ -267,6 +268,7 @@ struct solo_dev {
|
|||
/* Buffer handling */
|
||||
struct vb2_queue vidq;
|
||||
struct vb2_alloc_ctx *alloc_ctx;
|
||||
u32 sequence;
|
||||
struct task_struct *kthread;
|
||||
struct mutex lock;
|
||||
spinlock_t slock;
|
||||
|
|
|
@ -269,6 +269,7 @@ static int solo_enc_on(struct solo_enc_dev *solo_enc)
|
|||
/* Make sure to do a bandwidth check */
|
||||
if (solo_enc->bw_weight > solo_dev->enc_bw_remain)
|
||||
return -EBUSY;
|
||||
solo_enc->sequence = 0;
|
||||
solo_dev->enc_bw_remain -= solo_enc->bw_weight;
|
||||
|
||||
if (solo_enc->type == SOLO_ENC_TYPE_EXT)
|
||||
|
@ -522,7 +523,7 @@ static int solo_enc_fillbuf(struct solo_enc_dev *solo_enc,
|
|||
ret = solo_fill_jpeg(solo_enc, vb, vh);
|
||||
|
||||
if (!ret) {
|
||||
vb->v4l2_buf.sequence++;
|
||||
vb->v4l2_buf.sequence = solo_enc->sequence++;
|
||||
vb->v4l2_buf.timestamp.tv_sec = vh->sec;
|
||||
vb->v4l2_buf.timestamp.tv_usec = vh->usec;
|
||||
}
|
||||
|
|
|
@ -224,7 +224,7 @@ static void solo_fillbuf(struct solo_dev *solo_dev,
|
|||
if (!error) {
|
||||
vb2_set_plane_payload(vb, 0,
|
||||
solo_vlines(solo_dev) * solo_bytesperline(solo_dev));
|
||||
vb->v4l2_buf.sequence++;
|
||||
vb->v4l2_buf.sequence = solo_dev->sequence++;
|
||||
v4l2_get_timestamp(&vb->v4l2_buf.timestamp);
|
||||
}
|
||||
|
||||
|
@ -332,6 +332,7 @@ static int solo_start_streaming(struct vb2_queue *q, unsigned int count)
|
|||
{
|
||||
struct solo_dev *solo_dev = vb2_get_drv_priv(q);
|
||||
|
||||
solo_dev->sequence = 0;
|
||||
return solo_start_thread(solo_dev);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue