ODROID-XU4: media: s5p-mfc: copy timestamp and timecode in encoder output

Change-Id: Ic3a2f6eb94d60604df50976eca4e210898f40b32
Signed-off-by: memeka <mihailescu2m@gmail.com>
This commit is contained in:
memeka
2018-07-10 22:01:38 +09:30
committed by Dongjin Kim
parent 8aebf5aeac
commit 246cc30050

View File

@@ -1208,6 +1208,7 @@ static int enc_post_frame_start(struct s5p_mfc_ctx *ctx)
{
struct s5p_mfc_dev *dev = ctx->dev;
struct s5p_mfc_buf *mb_entry;
struct s5p_mfc_buf *dst_buf;
unsigned long enc_y_addr = 0, enc_c_addr = 0;
unsigned long mb_y_addr, mb_c_addr;
int slice_type;
@@ -1227,8 +1228,12 @@ static int enc_post_frame_start(struct s5p_mfc_ctx *ctx)
&mb_entry->b->vb2_buf, 0);
mb_c_addr = vb2_dma_contig_plane_dma_addr(
&mb_entry->b->vb2_buf, 1);
dst_buf = list_entry(ctx->dst_queue.next,
struct s5p_mfc_buf, list);
if ((enc_y_addr == mb_y_addr) &&
(enc_c_addr == mb_c_addr)) {
dst_buf->b->timecode = mb_entry->b->timecode;
dst_buf->b->vb2_buf.timestamp = mb_entry->b->vb2_buf.timestamp;
list_del(&mb_entry->list);
ctx->src_queue_cnt--;
vb2_buffer_done(&mb_entry->b->vb2_buf,
@@ -1241,8 +1246,12 @@ static int enc_post_frame_start(struct s5p_mfc_ctx *ctx)
&mb_entry->b->vb2_buf, 0);
mb_c_addr = vb2_dma_contig_plane_dma_addr(
&mb_entry->b->vb2_buf, 1);
dst_buf = list_entry(ctx->dst_queue.next,
struct s5p_mfc_buf, list);
if ((enc_y_addr == mb_y_addr) &&
(enc_c_addr == mb_c_addr)) {
dst_buf->b->timecode = mb_entry->b->timecode;
dst_buf->b->vb2_buf.timestamp = mb_entry->b->vb2_buf.timestamp;
list_del(&mb_entry->list);
ctx->ref_queue_cnt--;
vb2_buffer_done(&mb_entry->b->vb2_buf,