di: fix colorbar transition fliker [1/1]

PD#SWPL-14832

Problem:
colorbar testing pattern transition
fliker several times

Solution:
code align with L3 combining andw
parameter finetune

Verify:
905x3

Change-Id: Idb7f0a6594c7723f7fe0449f7eb1880967232719
Signed-off-by: Xihai Zhu <xihai.zhu@amlogic.com>
This commit is contained in:
Xihai Zhu
2019-12-18 18:12:34 +08:00
committed by Chris KIM
parent 45bbd0d1cd
commit 72cd6d7aae

View File

@@ -666,13 +666,19 @@ static unsigned int small_local_mtn = 70;
module_param(small_local_mtn, uint, 0644);
MODULE_PARM_DESC(small_local_mtn, "small_local_mtn");
static unsigned int small_local_mtn1 = 30;
module_param(small_local_mtn1, uint, 0644);
MODULE_PARM_DESC(small_local_mtn1, "small_local_mtn1");
unsigned int adp_set_mtn_ctrl10(unsigned int diff, unsigned int dlvel,
unsigned int frame_diff_avg)
{
int istp = 0, idats = 0, idatm = 0, idatr = 0;
unsigned int rst = 0;
if (frame_diff_avg < small_local_mtn)
if (
(frame_diff_avg < small_local_mtn) &&
(frame_diff_avg > small_local_mtn1))
rst = combing_very_motion_setting[9];
else if (dlvel == 0) {
if (cpu_after_eq(MESON_CPU_MAJOR_ID_TXLX))
@@ -914,9 +920,16 @@ int adaptive_combing_fixing(
combing_cnt = combing_cnt + 1;
else
combing_cnt = 0;
if (glb_mot[0] < combing_diff_min && glb_mot[1] > combing_diff_max &&
combing_cnt <= combing_cnt_thd)
glb_mot[0] = glb_mot[1];
if (
is_meson_txhd_cpu() ||
is_meson_tl1_cpu() ||
is_meson_tm2_cpu()) {
if (
glb_mot[0] < combing_diff_min &&
glb_mot[1] > combing_diff_max &&
combing_cnt <= combing_cnt_thd)
glb_mot[0] = glb_mot[1];
}
glb_mot_avg5 =
(glb_mot[0] + glb_mot[1] + glb_mot[2] + glb_mot[3] +
glb_mot[4]) / 5;