From 481d4f2ec4aac49ff6464a51c3165e60f5fe217c Mon Sep 17 00:00:00 2001 From: Pengcheng Chen Date: Tue, 7 May 2019 18:44:17 +0800 Subject: [PATCH] osd: set hdr size according osd blend0 out size [1/1] PD#IPTV-2395 Problem: osd last line have abnormal data Solution: set hdr size according osd blend0 out size Verify: Verfied on u212 Change-Id: Iad738b16fce066270c78213f1b696a802e1b8da6 Signed-off-by: Pengcheng Chen --- drivers/amlogic/media/osd/osd_hw.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/amlogic/media/osd/osd_hw.c b/drivers/amlogic/media/osd/osd_hw.c index 418264d..dc3c095 100644 --- a/drivers/amlogic/media/osd/osd_hw.c +++ b/drivers/amlogic/media/osd/osd_hw.c @@ -6173,8 +6173,6 @@ static int vpp_blend_setting_default(u32 index) osd1_v_start = osd_hw.dispdata[index].y_start; osd1_v_end = osd_hw.dispdata[index].y_end; } - VSYNCOSD_WR_MPEG_REG(VPP_OSD1_IN_SIZE, - osd1_dst_h | osd1_dst_v << 16); /* setting blend scope */ VSYNCOSD_WR_MPEG_REG(VPP_OSD1_BLD_H_SCOPE, @@ -8062,6 +8060,10 @@ static void set_blend_reg(struct layer_blend_reg_s *blend_reg) VSYNCOSD_WR_MPEG_REG(VIU_OSD_BLEND_BLEND0_SIZE, blend_reg->osd_blend_blend0_size); + /* hdr input size should set to osd blend0 output size */ + VSYNCOSD_WR_MPEG_REG(VPP_OSD1_IN_SIZE, + blend_reg->osd_blend_blend0_size); + VSYNCOSD_WR_MPEG_REG(VIU_OSD_BLEND_BLEND1_SIZE, blend_reg->osd_blend_blend1_size); @@ -8386,6 +8388,10 @@ static void osd_setting_default_hwc(void) VSYNCOSD_WR_MPEG_REG(VIU_OSD_BLEND_BLEND1_SIZE, blend_vsize << 16 | blend_hsize); + /* hdr input size should set to osd blend0 output size */ + VSYNCOSD_WR_MPEG_REG(VPP_OSD1_IN_SIZE, + blend_vsize << 16 | + blend_hsize); VSYNCOSD_WR_MPEG_REG_BITS(DOLBY_PATH_CTRL, 0x3, 2, 2); } -- 2.7.4