From cc4a2d2f9b89852df8fa7fc2f00cb54deb1e1022 Mon Sep 17 00:00:00 2001 From: Damon Ding Date: Mon, 19 Sep 2022 09:32:47 +0800 Subject: [PATCH] drm/rockchip: vop2: set splice_mode flag in loader_protect Signed-off-by: Damon Ding Change-Id: I513a133e6471f0e758b161fa67f5be5fdfaa1528 --- drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c index 1c04095424fe..b02b2cce89e9 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c @@ -5194,6 +5194,7 @@ static void vop2_crtc_disable_line_flag_event(struct drm_crtc *crtc) static int vop2_crtc_loader_protect(struct drm_crtc *crtc, bool on) { struct vop2_video_port *vp = to_vop2_video_port(crtc); + struct rockchip_crtc_state *vcstate = to_rockchip_crtc_state(crtc->state); struct vop2 *vop2 = vp->vop2; struct rockchip_drm_private *private = crtc->dev->dev_private; const struct vop2_video_port_data *vp_data = &vop2->data->vp[vp->id]; @@ -5224,6 +5225,7 @@ static int vop2_crtc_loader_protect(struct drm_crtc *crtc, bool on) crtc_state = drm_atomic_get_crtc_state(crtc->state->state, crtc); mode = &crtc_state->adjusted_mode; if (mode->hdisplay > VOP2_MAX_VP_OUTPUT_WIDTH) { + vcstate->splice_mode = true; splice_win = vop2_find_win_by_phys_id(vop2, win->splice_win_id); splice_win->splice_mode_right = true;