From 6dbee9dbece5ee679ed937573fe4e5886e5d09b9 Mon Sep 17 00:00:00 2001 From: Wenfeng Guo Date: Mon, 21 Oct 2019 17:21:33 +0800 Subject: [PATCH] deinterlace: add patch for global motion information [1/2] PD#SWPL-7814 Problem: VPP need di given global motion information Solution: add global motion information Verify: tl1 Change-Id: I6e522902a1d27b71db8c283b28ede6f684912fe0 Signed-off-by: Wenfeng Guo --- drivers/amlogic/media/deinterlace/deinterlace.c | 5 ++++- include/linux/amlogic/media/vfm/vframe.h | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/amlogic/media/deinterlace/deinterlace.c b/drivers/amlogic/media/deinterlace/deinterlace.c index 3b844ad..9f1bcba 100644 --- a/drivers/amlogic/media/deinterlace/deinterlace.c +++ b/drivers/amlogic/media/deinterlace/deinterlace.c @@ -3580,8 +3580,10 @@ static void pre_de_done_buf_config(void) di_pre_stru.di_post_wr_buf = di_pre_stru.di_wr_buf; post_wr_buf = di_pre_stru.di_post_wr_buf; - if (post_wr_buf) + if (post_wr_buf) { post_wr_buf->vframe->di_pulldown = 0; + post_wr_buf->vframe->di_gmv = 0; + } if (post_wr_buf && !di_pre_stru.cur_prog_flag) { read_pulldown_info(&glb_frame_mot_num, @@ -3596,6 +3598,7 @@ static void pre_de_done_buf_config(void) } post_wr_buf->vframe->di_pulldown |= 0x08; + post_wr_buf->vframe->di_gmv = glb_frame_mot_num; if (di_pre_stru.combing_fix_en) cur_lev = adaptive_combing_fixing( di_pre_stru.mtn_status, diff --git a/include/linux/amlogic/media/vfm/vframe.h b/include/linux/amlogic/media/vfm/vframe.h index 0272f73..7559831 100644 --- a/include/linux/amlogic/media/vfm/vframe.h +++ b/include/linux/amlogic/media/vfm/vframe.h @@ -435,6 +435,7 @@ struct vframe_s { * bit 0: flm32 *****************/ u32 di_pulldown; + u32 di_gmv; } /*vframe_t */; #if 0 -- 2.7.4