vdin: G12A color space error when capture screen by post blend [1/1]

PD#SWPL-8335

Problem:
color space setting error

Solution:
set yuv444 when use viu1 post blend port

Verify:
verified by t962x2_x301

Change-Id: Ic92a6db92f6cec64084d140c5f505489579b294f
Signed-off-by: zhiwei.yuan <zhiwei.yuan@amlogic.com>
This commit is contained in:
zhiwei.yuan
2019-05-10 15:43:15 +08:00
committed by Jianxin Pan
parent fb3d6d2474
commit ba57ce5798

View File

@@ -399,18 +399,27 @@ static void viuin_sig_property(struct tvin_frontend_s *fe,
static const struct vinfo_s *vinfo;
struct viuin_s *devp = container_of(fe, struct viuin_s, frontend);
if (devp->parm.port == TVIN_PORT_VIU1_VIDEO)
switch (devp->parm.port) {
case TVIN_PORT_VIU1_VIDEO:
case TVIN_PORT_VIU1_WB0_POST_BLEND:
prop->color_format = TVIN_YUV444;
else if ((devp->parm.port == TVIN_PORT_VIU1) ||
(devp->parm.port == TVIN_PORT_VIU2) ||
(devp->parm.port == TVIN_PORT_VIU1_WB0_VPP) ||
(devp->parm.port == TVIN_PORT_VIU1_WB1_VPP) ||
(devp->parm.port == TVIN_PORT_VIU2_WB0_VPP) ||
(devp->parm.port == TVIN_PORT_VIU2_WB1_VPP)) {
break;
case TVIN_PORT_VIU1:
case TVIN_PORT_VIU2:
case TVIN_PORT_VIU1_WB0_VPP:
case TVIN_PORT_VIU1_WB1_VPP:
case TVIN_PORT_VIU2_WB0_VPP:
case TVIN_PORT_VIU2_WB1_VPP:
vinfo = get_current_vinfo();
prop->color_format = vinfo->viu_color_fmt;
} else
break;
default:
prop->color_format = devp->parm.cfmt;
break;
}
prop->dest_cfmt = devp->parm.dfmt;
prop->scaling4w = devp->parm.dest_hactive;