radv: update sampler registers on GFX11

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16419>
This commit is contained in:
Samuel Pitoiset
2022-05-05 11:22:32 +02:00
committed by Marge Bot
parent 670ee6023d
commit ebca4f2b3d

View File

@@ -6253,10 +6253,8 @@ radv_init_sampler(struct radv_device *device, struct radv_sampler *sampler,
sampler->state[2] = (S_008F38_LOD_BIAS(radv_float_to_sfixed(CLAMP(pCreateInfo->mipLodBias, -16, 16), 8)) |
S_008F38_XY_MAG_FILTER(radv_tex_filter(pCreateInfo->magFilter, max_aniso)) |
S_008F38_XY_MIN_FILTER(radv_tex_filter(pCreateInfo->minFilter, max_aniso)) |
S_008F38_MIP_FILTER(radv_tex_mipfilter(pCreateInfo->mipmapMode)) |
S_008F38_MIP_POINT_PRECLAMP(0));
sampler->state[3] = (S_008F3C_BORDER_COLOR_PTR_GFX6(border_color_ptr) |
S_008F3C_BORDER_COLOR_TYPE(radv_tex_bordercolor(border_color)));
S_008F38_MIP_FILTER(radv_tex_mipfilter(pCreateInfo->mipmapMode)));
sampler->state[3] = S_008F3C_BORDER_COLOR_TYPE(radv_tex_bordercolor(border_color));
if (device->physical_device->rad_info.gfx_level >= GFX10) {
sampler->state[2] |=
@@ -6268,6 +6266,12 @@ radv_init_sampler(struct radv_device *device, struct radv_sampler *sampler,
S_008F38_ANISO_OVERRIDE_GFX8(device->instance->disable_aniso_single_level &&
device->physical_device->rad_info.gfx_level >= GFX8);
}
if (device->physical_device->rad_info.gfx_level >= GFX11) {
sampler->state[3] |= S_008F3C_BORDER_COLOR_PTR_GFX11(border_color_ptr);
} else {
sampler->state[3] |= S_008F3C_BORDER_COLOR_PTR_GFX6(border_color_ptr);
}
}
VKAPI_ATTR VkResult VKAPI_CALL