osd: modify VPP_OSD_SC_DUMMY_DATA alpha conditions [1/1]

PD#TV-6994

Problem:
When ATV Mode has no signal
the bright line interference at the bottom

Solution:
modify VPP_OSD_SC_DUMMY_DATA alpha value

Verify:
verified on txlx-r311

Change-Id: Icc5039f80bd794ed5adb98e22fbf41f52758ef83
Signed-off-by: Jian Cao <jian.cao@amlogic.com>
This commit is contained in:
Jian Cao
2019-06-24 19:04:18 +08:00
committed by Luke Go
parent e155a3e2ef
commit 803f63023f

View File

@@ -3038,7 +3038,8 @@ void osd_set_free_scale_enable_hw(u32 index, u32 enable)
osd_hw.free_dst_data[index].y_start + 1;
height_src = osd_hw.free_src_data[index].y_end -
osd_hw.free_src_data[index].y_start + 1;
if (height_dst != height_src)
if (height_dst != height_src &&
osd_hw.free_dst_data[index].y_end < 2159)
osd_set_dummy_data(index, 0);
else
osd_set_dummy_data(index, 0xff);
@@ -4435,8 +4436,9 @@ static bool osd_direct_compose_pan_display(struct osd_fence_map_s *fence_map)
sizeof(struct pandata_s));
freescale_update = true;
if ((height_dst != height_src) ||
(width_dst != width_src))
if (((height_dst != height_src) ||
(width_dst != width_src)) &&
osd_hw.free_dst_data[index].y_end < 2159)
osd_set_dummy_data(index, 0);
else
osd_set_dummy_data(index, 0xff);
@@ -7079,7 +7081,8 @@ static void osd_set_freescale(u32 index,
osd_hw.free_src_data[index].x_start + 1;
if ((osd_hw.osd_meson_dev.cpu_id ==
__MESON_CPU_MAJOR_ID_G12A) &&
(height != src_height))
(height != src_height) &&
osd_hw.free_dst_data[index].y_end < 2159)
osd_set_dummy_data(index, 0);
else
osd_set_dummy_data(index, 0xff);
@@ -8778,7 +8781,8 @@ static bool set_old_hwc_freescale(u32 index)
osd_hw.free_dst_data[index].y_start + 1;
height_src = osd_hw.free_src_data[index].y_end -
osd_hw.free_src_data[index].y_start + 1;
if (height_dst != height_src)
if (height_dst != height_src &&
osd_hw.free_dst_data[index].y_end < 2159)
osd_set_dummy_data(index, 0);
else
osd_set_dummy_data(index, 0xff);
@@ -10827,8 +10831,9 @@ static bool osd_direct_render(struct osd_plane_map_s *plane_map)
osd_hw.free_dst_data[index].y_end -
osd_hw.free_dst_data[index].y_start + 1;
if ((height_dst != height_src) ||
(width_dst != width_src))
if (((height_dst != height_src) ||
(width_dst != width_src)) &&
osd_hw.free_dst_data[index].y_end < 2159)
osd_set_dummy_data(index, 0);
else
osd_set_dummy_data(index, 0xff);