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. + + +