diff options
author | 2025-03-03 11:44:17 +0800 | |
---|---|---|
committer | 2025-03-03 22:35:21 +0100 | |
commit | e7aae9f6d762139f8d2b86db03793ae0ab3dd802 (patch) | |
tree | 296f639826c22a1f684cdd3d4360d72b76fbd591 | |
parent | drm/rockchip: vop2: Set plane possible crtcs by possible vp mask (diff) | |
download | wireguard-linux-e7aae9f6d762139f8d2b86db03793ae0ab3dd802.tar.xz wireguard-linux-e7aae9f6d762139f8d2b86db03793ae0ab3dd802.zip |
drm/rockchip: vop2: Add uv swap for cluster window
The Cluster windows of upcoming VOP on rk3576 also support
linear YUV support, we need to set uv swap bit for it.
As the VOP2_WIN_UV_SWA register defined on rk3568/rk3588 is
0xffffffff, so this register will not be touched on these
two platforms.
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Tested-by: Michael Riesch <michael.riesch@wolfvision.net> # on RK3568
Tested-by: Detlev Casanova <detlev.casanova@collabora.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20250303034436.192400-4-andyshrk@163.com
-rw-r--r-- | drivers/gpu/drm/rockchip/rockchip_drm_vop2.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c index 1280c5f07557..338cfb69e1cf 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c @@ -1377,10 +1377,8 @@ static void vop2_plane_atomic_update(struct drm_plane *plane, rb_swap = vop2_win_rb_swap(fb->format->format); vop2_win_write(win, VOP2_WIN_RB_SWAP, rb_swap); - if (!vop2_cluster_window(win)) { - uv_swap = vop2_win_uv_swap(fb->format->format); - vop2_win_write(win, VOP2_WIN_UV_SWAP, uv_swap); - } + uv_swap = vop2_win_uv_swap(fb->format->format); + vop2_win_write(win, VOP2_WIN_UV_SWAP, uv_swap); if (fb->format->is_yuv) { vop2_win_write(win, VOP2_WIN_UV_VIR, DIV_ROUND_UP(fb->pitches[1], 4)); |