From 1b19072d1da5462258b5bfd2bd27b7cdc2092d59 Mon Sep 17 00:00:00 2001 From: Andy Yan Date: Fri, 12 Nov 2021 21:07:10 +0800 Subject: [PATCH] drm/rockchip: vop2: Fix AFBC gating on rk3588 On RK3568: this bit is Auto gating enable on RK3588: this bit is gating disable(we must set it to 1 when afbc enable) Signed-off-by: Andy Yan Change-Id: If689c587c6df9e1e8c6ff670d30e62c53b621194 --- drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c index 982ab6f4ca8e..21617e2478d0 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c @@ -3711,7 +3711,11 @@ static void vop2_win_atomic_update(struct vop2_win *win, struct drm_rect *src, s VOP_AFBC_SET(vop2, win, format, afbc_format); VOP_AFBC_SET(vop2, win, rb_swap, rb_swap); VOP_AFBC_SET(vop2, win, uv_swap, uv_swap); - VOP_AFBC_SET(vop2, win, auto_gating_en, 0); + + if (vop2->version == VOP_VERSION_RK3568) + VOP_AFBC_SET(vop2, win, auto_gating_en, 0); + else + VOP_AFBC_SET(vop2, win, auto_gating_en, 1); VOP_AFBC_SET(vop2, win, block_split_en, 0); VOP_AFBC_SET(vop2, win, hdr_ptr, vpstate->yrgb_mst); VOP_AFBC_SET(vop2, win, pic_size, act_info);