radv: Add nodisplaydcc option.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9318>
This commit is contained in:

committed by
Marge Bot

parent
3c9452c3ae
commit
ff99faf0cf
@@ -579,6 +579,8 @@ RADV driver environment variables
|
|||||||
disable compute queue
|
disable compute queue
|
||||||
``nodcc``
|
``nodcc``
|
||||||
disable Delta Color Compression (DCC) on images
|
disable Delta Color Compression (DCC) on images
|
||||||
|
``nodisplaydcc``
|
||||||
|
disable Delta Color Compression (DCC) on displayable images
|
||||||
``nodynamicbounds``
|
``nodynamicbounds``
|
||||||
do not check OOB access for dynamic descriptors
|
do not check OOB access for dynamic descriptors
|
||||||
``nofastclears``
|
``nofastclears``
|
||||||
|
@@ -60,6 +60,7 @@ enum {
|
|||||||
RADV_DEBUG_IMG = 1ull << 29,
|
RADV_DEBUG_IMG = 1ull << 29,
|
||||||
RADV_DEBUG_NO_UMR = 1ull << 30,
|
RADV_DEBUG_NO_UMR = 1ull << 30,
|
||||||
RADV_DEBUG_INVARIANT_GEOM = 1ull << 31,
|
RADV_DEBUG_INVARIANT_GEOM = 1ull << 31,
|
||||||
|
RADV_DEBUG_NO_DISPLAY_DCC = 1ull << 32,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
|
@@ -796,6 +796,7 @@ static const struct debug_control radv_debug_options[] = {
|
|||||||
{"img", RADV_DEBUG_IMG},
|
{"img", RADV_DEBUG_IMG},
|
||||||
{"noumr", RADV_DEBUG_NO_UMR},
|
{"noumr", RADV_DEBUG_NO_UMR},
|
||||||
{"invariantgeom", RADV_DEBUG_INVARIANT_GEOM},
|
{"invariantgeom", RADV_DEBUG_INVARIANT_GEOM},
|
||||||
|
{"nodisplaydcc", RADV_DEBUG_NO_DISPLAY_DCC},
|
||||||
{NULL, 0}
|
{NULL, 0}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -1152,7 +1152,7 @@ radv_get_modifier_flags(struct radv_physical_device *dev,
|
|||||||
if (ac_modifier_has_dcc(modifier)) {
|
if (ac_modifier_has_dcc(modifier)) {
|
||||||
features &= ~VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT;
|
features &= ~VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT;
|
||||||
|
|
||||||
if (dev->instance->debug_flags & RADV_DEBUG_NO_DCC)
|
if (dev->instance->debug_flags & (RADV_DEBUG_NO_DCC | RADV_DEBUG_NO_DISPLAY_DCC))
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -424,6 +424,8 @@ radv_patch_image_from_extra_info(struct radv_device *device,
|
|||||||
|
|
||||||
if (radv_surface_has_scanout(device, create_info)) {
|
if (radv_surface_has_scanout(device, create_info)) {
|
||||||
image->planes[plane].surface.flags |= RADEON_SURF_SCANOUT;
|
image->planes[plane].surface.flags |= RADEON_SURF_SCANOUT;
|
||||||
|
if (device->instance->debug_flags & RADV_DEBUG_NO_DISPLAY_DCC)
|
||||||
|
image->planes[plane].surface.flags |= RADEON_SURF_DISABLE_DCC;
|
||||||
|
|
||||||
image->info.surf_index = NULL;
|
image->info.surf_index = NULL;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user