anv: expose VK_MESA_image_alignment_control
Our implementation is a no-op for the following reasons : - ISL always tries to go for the smallest tiling mode (see isl_surf_choose_tiling()) - In the few cases where we need to use Tile64 for compression workarounds, VK_MESA_image_alignment_control doesn't require use to disable compression - vkd3d-proton has the ability to disable compression using VK_EXT_image_compression_control, disabling Tile64 requirements and ensuring ISL can select a 4k tiling mode So vkd3d-proton should always be able to get a 4k tiling mode if it wants to. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Rohan Garg <rohan.garg@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29175>
This commit is contained in:

committed by
Marge Bot

parent
3e7a82968d
commit
62c52fb59d
@@ -437,6 +437,7 @@ get_device_extensions(const struct anv_physical_device *device,
|
||||
.INTEL_shader_integer_functions2 = true,
|
||||
.EXT_multi_draw = true,
|
||||
.NV_compute_shader_derivatives = true,
|
||||
.MESA_image_alignment_control = true,
|
||||
.VALVE_mutable_descriptor_type = true,
|
||||
};
|
||||
}
|
||||
@@ -948,6 +949,9 @@ get_features(const struct anv_physical_device *pdevice,
|
||||
|
||||
/* VK_EXT_legacy_dithering */
|
||||
.legacyDithering = true,
|
||||
|
||||
/* VK_MESA_image_alignment_control */
|
||||
.imageAlignmentControl = true,
|
||||
};
|
||||
|
||||
/* The new DOOM and Wolfenstein games require depthBounds without
|
||||
@@ -1890,6 +1894,12 @@ get_properties(const struct anv_physical_device *pdevice,
|
||||
}
|
||||
#endif /* DETECT_OS_ANDROID */
|
||||
|
||||
|
||||
/* VK_MESA_image_alignment_control */
|
||||
{
|
||||
/* We support 4k/64k tiling alignments on most platforms */
|
||||
props->supportedImageAlignmentMask = (1 << 12) | (1 << 16);
|
||||
}
|
||||
}
|
||||
|
||||
static VkResult MUST_CHECK
|
||||
|
Reference in New Issue
Block a user