drm/rockchip: vop: fix rk3036 no display
authorMark Yao <mark.yao@rock-chips.com>
Tue, 6 Sep 2016 09:28:32 +0000 (17:28 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Sun, 18 Sep 2016 02:04:29 +0000 (10:04 +0800)
Rk3036 vop default is blank, so init vop with unblank.

Change-Id: I10c21af70cec95b7073f8c999e655031ee154747
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
drivers/gpu/drm/rockchip/rockchip_drm_vop.c
drivers/gpu/drm/rockchip/rockchip_vop_reg.c

index e5c95bdb38ea89e65f4c2f194d6b1ae54b2aa565..194edcd290c6381a9b0908212089ab0522e2595e 100644 (file)
@@ -553,6 +553,7 @@ static void vop_enable(struct drm_crtc *crtc)
        memcpy(vop->regsbak, vop->regs, vop->len);
 
        VOP_CTRL_SET(vop, global_regdone_en, 1);
+       VOP_CTRL_SET(vop, dsp_blank, 0);
 
        for (i = 0; i < vop->num_wins; i++) {
                struct vop_win *win = &vop->win[i];
index 8e27991a2ffb12c6a76d82ee7f536ebf47ff8b4a..4298e091350fff52a761eef03e6ccb282a26c1b1 100644 (file)
@@ -474,6 +474,7 @@ static const struct vop_intr rk3036_intr = {
 static const struct vop_ctrl rk3036_ctrl_data = {
        .standby = VOP_REG(RK3036_SYS_CTRL, 0x1, 30),
        .out_mode = VOP_REG(RK3036_DSP_CTRL0, 0xf, 0),
+       .dsp_blank = VOP_REG(RK3036_DSP_CTRL1, 0x1, 24),
        .pin_pol = VOP_REG(RK3036_DSP_CTRL0, 0xf, 4),
        .dsp_layer_sel = VOP_REG(RK3036_DSP_CTRL0, 0x1, 8),
        .htotal_pw = VOP_REG(RK3036_DSP_HTOTAL_HS_END, 0x1fff1fff, 0),