aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/iris/iris_resolve.c
diff options
context:
space:
mode:
authorNanley Chery <[email protected]>2020-06-01 08:48:56 -0700
committerMarge Bot <[email protected]>2020-06-19 21:03:31 +0000
commitfbbf79377bcad0ed51d00a7d7e981375f8c29d54 (patch)
tree65ff78cea49c0582d57183ab75c8b53b1ae7f6b5 /src/gallium/drivers/iris/iris_resolve.c
parente533232d8c814dec0799650a6de3a710d029c63e (diff)
iris: Remove the CCS_D fallback
Remove the CCS_D fallback logic so that iris doesn't attempt to use a non-existent surface state for some renders. Also, add an assertion to catch the issue. The fallback in iris_resource_render_aux_usage can lead to this problem because it doesn't account for the fact that surface states created from resources with the Y_TILED_CCS modifier may only have CCS_E or NONE as aux usages (due to iris_resource_create_with_modifiers). Without this change, the next commit would have triggered the fallback and regressed the following tests on gen9: * dEQP-EGL.functional.wide_color.window_888_colorspace_srgb * dEQP-EGL.functional.wide_color.window_8888_colorspace_srgb * dEQP-EGL.functional.wide_color.pbuffer_888_colorspace_srgb * dEQP-EGL.functional.wide_color.pbuffer_8888_colorspace_srgb Reviewed-by: Kenneth Graunke <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4972>
Diffstat (limited to 'src/gallium/drivers/iris/iris_resolve.c')
-rw-r--r--src/gallium/drivers/iris/iris_resolve.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/gallium/drivers/iris/iris_resolve.c b/src/gallium/drivers/iris/iris_resolve.c
index 0350e58a225..0d647630f5d 100644
--- a/src/gallium/drivers/iris/iris_resolve.c
+++ b/src/gallium/drivers/iris/iris_resolve.c
@@ -1019,8 +1019,7 @@ iris_resource_render_aux_usage(struct iris_context *ice,
format_ccs_e_compat_with_resource(devinfo, res, render_format))
return ISL_AUX_USAGE_CCS_E;
- /* Otherwise, we try to fall back to CCS_D */
- if (isl_format_supports_ccs_d(devinfo, render_format))
+ if (res->aux.usage == ISL_AUX_USAGE_CCS_D)
return ISL_AUX_USAGE_CCS_D;
default: