diff --git a/src/intel/vulkan/anv_instance.c b/src/intel/vulkan/anv_instance.c
index 5c8eb543039..f42165d8a98 100644
--- a/src/intel/vulkan/anv_instance.c
+++ b/src/intel/vulkan/anv_instance.c
@@ -16,6 +16,7 @@ static const driOptionDescription anv_dri_options[] = {
DRI_CONF_VK_XWAYLAND_WAIT_READY(false)
DRI_CONF_ANV_ASSUME_FULL_SUBGROUPS(0)
DRI_CONF_ANV_DISABLE_FCV(false)
+ DRI_CONF_ANV_DISABLE_XE2_CCS(false)
DRI_CONF_ANV_EXTERNAL_MEMORY_IMPLICIT_SYNC(true)
DRI_CONF_ANV_FORCE_GUC_LOW_LATENCY(false)
DRI_CONF_ANV_SAMPLE_MASK_OUT_OPENGL_BEHAVIOUR(false)
@@ -166,6 +167,8 @@ anv_init_dri_options(struct anv_instance *instance)
instance->enable_tbimr = driQueryOptionb(&instance->dri_options, "intel_tbimr");
instance->disable_fcv =
driQueryOptionb(&instance->dri_options, "anv_disable_fcv");
+ instance->disable_xe2_ccs =
+ driQueryOptionb(&instance->dri_options, "anv_disable_xe2_ccs");
instance->external_memory_implicit_sync =
driQueryOptionb(&instance->dri_options, "anv_external_memory_implicit_sync");
instance->compression_control_enabled =
diff --git a/src/intel/vulkan/anv_physical_device.c b/src/intel/vulkan/anv_physical_device.c
index b961261418e..6b361ce57cf 100644
--- a/src/intel/vulkan/anv_physical_device.c
+++ b/src/intel/vulkan/anv_physical_device.c
@@ -2250,6 +2250,9 @@ anv_physical_device_try_create(struct vk_instance *vk_instance,
goto fail_fd;
}
+ if (devinfo.ver == 20 && instance->disable_xe2_ccs)
+ intel_debug |= DEBUG_NO_CCS;
+
/* Disable Wa_16013994831 on Gfx12.0 because we found other cases where we
* need to always disable preemption :
* - https://gitlab.freedesktop.org/mesa/mesa/-/issues/5963
diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h
index 335abd937d3..ab077016c40 100644
--- a/src/intel/vulkan/anv_private.h
+++ b/src/intel/vulkan/anv_private.h
@@ -1299,6 +1299,7 @@ struct anv_instance {
unsigned force_vk_vendor;
bool has_fake_sparse;
bool disable_fcv;
+ bool disable_xe2_ccs;
bool compression_control_enabled;
bool anv_fake_nonlocal_memory;
diff --git a/src/util/00-mesa-defaults.conf b/src/util/00-mesa-defaults.conf
index 033b4cd89dc..b9e2e17996e 100644
--- a/src/util/00-mesa-defaults.conf
+++ b/src/util/00-mesa-defaults.conf
@@ -1251,6 +1251,12 @@ TODO: document the other workarounds.
+
+
+
+