Revert "panfrost: Z24 variants should be sampled as R32UI"

Commit 0406ea4856 ("panfrost: Z24 variants should be sampled as
R32UI") causes a regression when depth textures are sampled.

It's still not clear how MALI_Z32 can work for for Z32 and Z24{S,X}8,
but let's leave that question for later.

Reported-by: Icecream95 <ixn@keemail.me>
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4101>
This commit is contained in:
Boris Brezillon 2020-03-07 15:40:15 +01:00
parent 8d0ec5b8a6
commit ce845f44e9
2 changed files with 1 additions and 51 deletions

View File

@ -130,7 +130,6 @@ dEQP-GLES3.functional.fbo.invalidate.sub.unbind_blit_msaa_depth_stencil
dEQP-GLES3.functional.fbo.invalidate.sub.unbind_blit_msaa_stencil
dEQP-GLES3.functional.fbo.invalidate.sub.unbind_blit_stencil
dEQP-GLES3.functional.fbo.invalidate.sub.unbind_read_depth
dEQP-GLES3.functional.fbo.invalidate.sub.unbind_read_depth_stencil
dEQP-GLES3.functional.fbo.invalidate.sub.unbind_read_stencil
dEQP-GLES3.functional.fbo.invalidate.whole.unbind_blit_color
dEQP-GLES3.functional.fbo.invalidate.whole.unbind_blit_depth
@ -141,7 +140,6 @@ dEQP-GLES3.functional.fbo.invalidate.whole.unbind_blit_msaa_stencil
dEQP-GLES3.functional.fbo.invalidate.whole.unbind_blit_stencil
dEQP-GLES3.functional.fbo.invalidate.whole.unbind_read_color
dEQP-GLES3.functional.fbo.invalidate.whole.unbind_read_color_stencil
dEQP-GLES3.functional.fbo.invalidate.whole.unbind_read_stencil
dEQP-GLES3.functional.fbo.msaa.2_samples.depth24_stencil8
dEQP-GLES3.functional.fbo.msaa.2_samples.depth32f_stencil8
dEQP-GLES3.functional.fbo.msaa.2_samples.depth_component16
@ -1051,25 +1049,19 @@ dEQP-GLES3.functional.shaders.texture_functions.texturegradoffset.sampler2darray
dEQP-GLES3.functional.shaders.texture_functions.texturegradoffset.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.texturegradoffset.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.texturegrad.sampler2darrayshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.texturegrad.sampler2darrayshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.texturegrad.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.texturegrad.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.texturelodoffset.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.texturelodoffset.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.texturelod.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.texturelod.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureoffset.sampler2dshadow_bias_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureoffset.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureoffset.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureprojgradoffset.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojgradoffset.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureprojgrad.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojgrad.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureprojlodoffset.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojlodoffset.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureprojlod.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojlod.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler2dshadow_bias_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureproj.sampler2dshadow_bias_fragment
@ -1078,8 +1070,6 @@ dEQP-GLES3.functional.shaders.texture_functions.textureproj.sampler2dshadow_vert
dEQP-GLES3.functional.shaders.texture_functions.texture.sampler2darrayshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.texture.sampler2dshadow_bias_fragment
dEQP-GLES3.functional.shaders.texture_functions.texture.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.texture.sampler2dshadow_vertex
dEQP-GLES3.functional.shaders.texture_functions.texture.samplercubeshadow_bias_fragment
dEQP-GLES3.functional.shaders.texture_functions.texture.samplercubeshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.texture.samplercubeshadow_vertex
dEQP-GLES3.functional.state_query.integers.max_samples_getfloat
@ -1107,8 +1097,6 @@ dEQP-GLES3.functional.texture.format.sized.cube.depth_component24_pot
dEQP-GLES3.functional.texture.shadow.2d_array.linear.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.linear.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.linear.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.linear.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.linear.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.linear.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.linear.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.linear.less_or_equal_depth_component16
@ -1118,74 +1106,58 @@ dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_linear.greater_or_eq
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_linear.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_linear.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_linear.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_linear.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_linear.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_nearest.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_nearest.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_nearest.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_nearest.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_nearest.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_nearest.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_nearest.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.linear_mipmap_nearest.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_linear.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_linear.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_linear.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_linear.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_linear.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_linear.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_linear.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_linear.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_nearest.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_nearest.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_nearest.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_nearest.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_nearest.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_nearest.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_nearest.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d_array.nearest_mipmap_nearest.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_linear.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_linear.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_linear.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_linear.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_linear.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_linear.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_linear.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_linear.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_nearest.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_nearest.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_nearest.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_nearest.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_nearest.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_nearest.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_nearest.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.linear_mipmap_nearest.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.nearest.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.nearest.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.nearest.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.nearest.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.nearest.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.nearest.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.nearest.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.nearest.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_linear.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_linear.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_linear.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_linear.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_linear.less_depth24_stencil8
@ -1198,7 +1170,6 @@ dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_nearest.greater_or_equal_
dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_nearest.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_nearest.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_nearest.less_depth_component16
dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_nearest.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.2d.nearest_mipmap_nearest.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear.greater_depth_component16
@ -1206,45 +1177,35 @@ dEQP-GLES3.functional.texture.shadow.cube.linear.greater_or_equal_depth24_stenci
dEQP-GLES3.functional.texture.shadow.cube.linear.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear.less_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_linear.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_linear.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_linear.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_linear.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_linear.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_linear.less_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_linear.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_linear.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_nearest.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_nearest.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_nearest.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_nearest.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_nearest.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_nearest.less_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_nearest.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.linear_mipmap_nearest.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest.less_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_linear.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_linear.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_linear.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_linear.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_linear.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_linear.less_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_linear.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_linear.less_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_nearest.greater_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_nearest.greater_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_nearest.greater_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_nearest.greater_or_equal_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_nearest.less_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_nearest.less_depth_component16
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_nearest.less_or_equal_depth24_stencil8
dEQP-GLES3.functional.texture.shadow.cube.nearest_mipmap_nearest.less_or_equal_depth_component16
@ -1258,15 +1219,12 @@ dEQP-GLES3.functional.texture.specification.teximage2d_depth_pbo.depth_component
dEQP-GLES3.functional.texture.specification.teximage2d_depth_pbo.depth_component24
dEQP-GLES3.functional.texture.specification.teximage3d_depth.depth24_stencil8_2d_array
dEQP-GLES3.functional.texture.specification.teximage3d_depth.depth_component16_2d_array
dEQP-GLES3.functional.texture.specification.teximage3d_depth.depth_component24_2d_array
dEQP-GLES3.functional.texture.specification.teximage3d_depth_pbo.depth24_stencil8_2d_array
dEQP-GLES3.functional.texture.specification.teximage3d_depth_pbo.depth_component16_2d_array
dEQP-GLES3.functional.texture.specification.teximage3d_depth_pbo.depth_component24_2d_array
dEQP-GLES3.functional.texture.specification.texstorage2d.format.depth24_stencil8_2d
dEQP-GLES3.functional.texture.specification.texstorage2d.format.depth24_stencil8_cube
dEQP-GLES3.functional.texture.specification.texstorage2d.format.depth32f_stencil8_2d
dEQP-GLES3.functional.texture.specification.texstorage2d.format.depth_component16_2d
dEQP-GLES3.functional.texture.specification.texstorage2d.format.depth_component16_cube
dEQP-GLES3.functional.texture.specification.texstorage2d.format.depth_component24_2d
dEQP-GLES3.functional.texture.specification.texstorage2d.format.depth_component24_cube
dEQP-GLES3.functional.texture.specification.texstorage3d.format.depth24_stencil8_2d_array

View File

@ -116,17 +116,9 @@ panfrost_find_format(const struct util_format_description *desc)
return MALI_RGB10_A2I;
case PIPE_FORMAT_Z32_UNORM:
return MALI_Z32_UNORM;
case PIPE_FORMAT_Z24X8_UNORM:
case PIPE_FORMAT_Z24_UNORM_S8_UINT:
/* Midgard has no dedicated samplers for Z24S8 and Z24X8
* formats, and the GPU expects the depth to be encoded in an
* IEEE 32-bit float. Turn all Z24_UNORM variants into R32UI
* and let the shader do the conversion using bfe+fmul
* instructions.
*/
return MALI_R32UI;
return MALI_Z32_UNORM;
case PIPE_FORMAT_Z32_FLOAT_S8X24_UINT:
/* Z32F = R32F to the hardware */