diff --git a/.pick_status.json b/.pick_status.json index dc1222fe5a2..7aa4dfe0b37 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -436,7 +436,7 @@ "description": "intel/anv: Fix condition to set MipModeFilter for YUV surface", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "b24b93d58431a4349eecddb07304f6eda648e997" }, diff --git a/src/intel/vulkan/genX_state.c b/src/intel/vulkan/genX_state.c index e490c40f07c..0c7905b6bcd 100644 --- a/src/intel/vulkan/genX_state.c +++ b/src/intel/vulkan/genX_state.c @@ -504,9 +504,12 @@ VkResult genX(CreateSampler)( /* From Broadwell PRM, SAMPLER_STATE: * "Mip Mode Filter must be set to MIPFILTER_NONE for Planar YUV surfaces." */ + const bool isl_format_is_planar_yuv = + isl_format_is_yuv(sampler->conversion->format->planes[0].isl_format) && + isl_format_is_planar(sampler->conversion->format->planes[0].isl_format); + const uint32_t mip_filter_mode = - (sampler->conversion && - isl_format_is_yuv(sampler->conversion->format->planes[0].isl_format)) ? + (sampler->conversion && isl_format_is_planar_yuv) ? MIPFILTER_NONE : vk_to_gen_mipmap_mode[pCreateInfo->mipmapMode]; struct GENX(SAMPLER_STATE) sampler_state = {