drm/rockchip: vop2: correctly rgb output mode

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I95353627903b0673c4c3afe7c891f63932e77c81
This commit is contained in:
Sandy Huang
2021-11-18 16:42:47 +08:00
committed by Tao Huang
parent 7ea8091741
commit 0d3838a66d
2 changed files with 9 additions and 5 deletions

View File

@@ -5573,8 +5573,12 @@ static void vop2_crtc_atomic_enable(struct drm_crtc *crtc, struct drm_crtc_state
if (ret < 0)
goto out;
VOP_CTRL_SET(vop2, rgb_en, 1);
VOP_CTRL_SET(vop2, bt1120_en, 1);
if (vop2->version == VOP_VERSION_RK3588) {
VOP_CTRL_SET(vop2, bt1120_en, 3);
} else {
VOP_CTRL_SET(vop2, rgb_en, 1);
VOP_CTRL_SET(vop2, bt1120_en, 1);
}
VOP_CTRL_SET(vop2, rgb_mux, vp_data->id);
VOP_GRF_SET(vop2, sys_grf, grf_bt1120_clk_inv, !dclk_inv);
yc_swap = vop2_output_yc_swap(vcstate->bus_format);

View File

@@ -2563,9 +2563,9 @@ static const struct vop2_ctrl rk3588_vop_ctrl = {
.hdmi1_en = VOP_REG(RK3568_DSP_IF_EN, 0x1, 5),
.mipi0_en = VOP_REG(RK3568_DSP_IF_EN, 0x1, 6),
.mipi1_en = VOP_REG(RK3568_DSP_IF_EN, 0x1, 7),
.rgb_en = VOP_REG(RK3568_DSP_IF_EN, 0x1, 8),
.bt1120_en = VOP_REG(RK3568_DSP_IF_EN, 0x1, 9),
.bt656_en = VOP_REG(RK3568_DSP_IF_EN, 0x1, 10),
.bt1120_en = VOP_REG(RK3568_DSP_IF_EN, 0x3, 8),
.bt656_en = VOP_REG(RK3568_DSP_IF_EN, 0x1, 9),
.rgb_en = VOP_REG(RK3568_DSP_IF_EN, 0x1, 10),
.dp0_mux = VOP_REG(RK3568_DSP_IF_EN, 0x3, 12),
.dp1_mux = VOP_REG(RK3568_DSP_IF_EN, 0x3, 14),
.hdmi0_mux = VOP_REG(RK3568_DSP_IF_EN, 0x3, 16),