mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-20 03:00:11 +01:00
anv/drirc: disable Xe2 CCS drm modifiers for GTK engine
Cc: mesa-stable
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38373>
(cherry picked from commit 2418c91537)
Conflicts:
src/util/driconf.h
This commit is contained in:
parent
3460fd7807
commit
6d85a95848
6 changed files with 18 additions and 1 deletions
|
|
@ -114,7 +114,7 @@
|
||||||
"description": "anv/drirc: disable Xe2 CCS drm modifiers for GTK engine",
|
"description": "anv/drirc: disable Xe2 CCS drm modifiers for GTK engine",
|
||||||
"nominated": true,
|
"nominated": true,
|
||||||
"nomination_type": 1,
|
"nomination_type": 1,
|
||||||
"resolution": 0,
|
"resolution": 1,
|
||||||
"main_sha": null,
|
"main_sha": null,
|
||||||
"because_sha": null,
|
"because_sha": null,
|
||||||
"notes": null
|
"notes": null
|
||||||
|
|
|
||||||
|
|
@ -1969,6 +1969,12 @@ anv_image_init(struct anv_device *device, struct anv_image *image,
|
||||||
*/
|
*/
|
||||||
isl_extra_usage_flags |= ISL_SURF_USAGE_DISABLE_AUX_BIT;
|
isl_extra_usage_flags |= ISL_SURF_USAGE_DISABLE_AUX_BIT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Workaround to disable XE2 CCS modifiers from drirc. */
|
||||||
|
if (device->info->ver == 20 &&
|
||||||
|
image->vk.tiling == VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT &&
|
||||||
|
device->physical->instance->disable_xe2_drm_ccs_modifiers)
|
||||||
|
isl_extra_usage_flags |= ISL_SURF_USAGE_DISABLE_AUX_BIT;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Fill out the list of view formats. */
|
/* Fill out the list of view formats. */
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@ static const driOptionDescription anv_dri_options[] = {
|
||||||
DRI_CONF_ANV_ASSUME_FULL_SUBGROUPS_WITH_SHARED_MEMORY(false)
|
DRI_CONF_ANV_ASSUME_FULL_SUBGROUPS_WITH_SHARED_MEMORY(false)
|
||||||
DRI_CONF_ANV_DISABLE_FCV(false)
|
DRI_CONF_ANV_DISABLE_FCV(false)
|
||||||
DRI_CONF_ANV_ENABLE_BUFFER_COMP(false)
|
DRI_CONF_ANV_ENABLE_BUFFER_COMP(false)
|
||||||
|
DRI_CONF_ANV_DISABLE_DRM_AUX_MODIFIERS(false)
|
||||||
DRI_CONF_ANV_EXTERNAL_MEMORY_IMPLICIT_SYNC(true)
|
DRI_CONF_ANV_EXTERNAL_MEMORY_IMPLICIT_SYNC(true)
|
||||||
DRI_CONF_ANV_FORCE_GUC_LOW_LATENCY(false)
|
DRI_CONF_ANV_FORCE_GUC_LOW_LATENCY(false)
|
||||||
DRI_CONF_ANV_SAMPLE_MASK_OUT_OPENGL_BEHAVIOUR(false)
|
DRI_CONF_ANV_SAMPLE_MASK_OUT_OPENGL_BEHAVIOUR(false)
|
||||||
|
|
@ -221,6 +222,8 @@ anv_init_dri_options(struct anv_instance *instance)
|
||||||
driQueryOptionb(&instance->dri_options, "anv_vf_component_packing");
|
driQueryOptionb(&instance->dri_options, "anv_vf_component_packing");
|
||||||
instance->lower_terminate_to_discard =
|
instance->lower_terminate_to_discard =
|
||||||
driQueryOptionb(&instance->dri_options, "vk_lower_terminate_to_discard");
|
driQueryOptionb(&instance->dri_options, "vk_lower_terminate_to_discard");
|
||||||
|
instance->disable_xe2_drm_ccs_modifiers =
|
||||||
|
driQueryOptionb(&instance->dri_options, "anv_disable_drm_ccs_modifiers");
|
||||||
|
|
||||||
if (instance->vk.app_info.engine_name &&
|
if (instance->vk.app_info.engine_name &&
|
||||||
!strcmp(instance->vk.app_info.engine_name, "DXVK")) {
|
!strcmp(instance->vk.app_info.engine_name, "DXVK")) {
|
||||||
|
|
|
||||||
|
|
@ -1726,6 +1726,7 @@ struct anv_instance {
|
||||||
bool has_fake_sparse;
|
bool has_fake_sparse;
|
||||||
bool disable_fcv;
|
bool disable_fcv;
|
||||||
bool enable_buffer_comp;
|
bool enable_buffer_comp;
|
||||||
|
bool disable_xe2_drm_ccs_modifiers;
|
||||||
bool compression_control_enabled;
|
bool compression_control_enabled;
|
||||||
bool anv_fake_nonlocal_memory;
|
bool anv_fake_nonlocal_memory;
|
||||||
bool anv_upper_bound_descriptor_pool_sampler;
|
bool anv_upper_bound_descriptor_pool_sampler;
|
||||||
|
|
|
||||||
|
|
@ -1127,6 +1127,9 @@ TODO: document the other workarounds.
|
||||||
<engine engine_name_match="GTK" engine_versions="16777216:16859138">
|
<engine engine_name_match="GTK" engine_versions="16777216:16859138">
|
||||||
<option name="vk_wsi_disable_unordered_submits" value="true" />
|
<option name="vk_wsi_disable_unordered_submits" value="true" />
|
||||||
</engine>
|
</engine>
|
||||||
|
<engine engine_name_match="GTK">
|
||||||
|
<option name="anv_disable_drm_ccs_modifiers" value="true" />
|
||||||
|
</engine>
|
||||||
<!--
|
<!--
|
||||||
Disable 16-bit feature on zink and angle so that GLES mediump doesn't
|
Disable 16-bit feature on zink and angle so that GLES mediump doesn't
|
||||||
lower to our inefficent 16-bit shader support. No need to do so for
|
lower to our inefficent 16-bit shader support. No need to do so for
|
||||||
|
|
|
||||||
|
|
@ -902,6 +902,10 @@
|
||||||
DRI_CONF_OPT_B(anv_large_workgroup_non_coherent_image_workaround, def, \
|
DRI_CONF_OPT_B(anv_large_workgroup_non_coherent_image_workaround, def, \
|
||||||
"Fixup image coherency qualifier for certain shaders.")
|
"Fixup image coherency qualifier for certain shaders.")
|
||||||
|
|
||||||
|
#define DRI_CONF_ANV_DISABLE_DRM_AUX_MODIFIERS(def) \
|
||||||
|
DRI_CONF_OPT_B(anv_disable_drm_ccs_modifiers, def, \
|
||||||
|
"Disable DRM CCS modifier usage")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief HASVK specific configuration options
|
* \brief HASVK specific configuration options
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue