]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/rockchip: vop2: Check linear format for Cluster windows on rk3566/8
authorAndy Yan <andy.yan@rock-chips.com>
Sat, 14 Dec 2024 08:17:04 +0000 (16:17 +0800)
committerHeiko Stuebner <heiko@sntech.de>
Wed, 18 Dec 2024 16:39:00 +0000 (17:39 +0100)
The Cluster windows on rk3566/8 only support afbc mode.

Fixes: 604be85547ce ("drm/rockchip: Add VOP2 driver")
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20241214081719.3330518-6-andyshrk@163.com
drivers/gpu/drm/rockchip/rockchip_drm_vop2.c

index 4e7b31eec36da0edbc288aa69c541b7820f5dc8f..a6281f1cd3fa7d0204c3f797f034d14e75be0817 100644 (file)
@@ -593,6 +593,16 @@ static bool rockchip_vop2_mod_supported(struct drm_plane *plane, u32 format,
        if (modifier == DRM_FORMAT_MOD_INVALID)
                return false;
 
+       if (vop2->data->soc_id == 3568 || vop2->data->soc_id == 3566) {
+               if (vop2_cluster_window(win)) {
+                       if (modifier == DRM_FORMAT_MOD_LINEAR) {
+                               drm_dbg_kms(vop2->drm,
+                                           "Cluster window only supports format with afbc\n");
+                               return false;
+                       }
+               }
+       }
+
        if (modifier == DRM_FORMAT_MOD_LINEAR)
                return true;