aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPlamena Manolova <[email protected]>2019-03-14 22:28:20 +0200
committerPlamena Manolova <[email protected]>2019-04-29 21:19:58 +0000
commit232c0f64891e2f9853726c36485b566b23b22cf4 (patch)
treef3bd5302450c7bb2df5ee162a8328c6c625b5327
parent158758618264eac113025a86a360dc305ed4498b (diff)
isl: Set ClearColorConversionEnable.
The ClearColorConversionEnable bit needs to be set for GEN11 when inderect clear colors are used. Signed-off-by: Plamena Manolova <[email protected]> Reviewed-by: Rafael Antognolli <[email protected]> Reviewed-by: Nanley Chery <[email protected]>
-rw-r--r--src/intel/isl/isl_surface_state.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/intel/isl/isl_surface_state.c b/src/intel/isl/isl_surface_state.c
index cf31b36ccbe..4887dedc364 100644
--- a/src/intel/isl/isl_surface_state.c
+++ b/src/intel/isl/isl_surface_state.c
@@ -618,6 +618,27 @@ isl_genX(surf_fill_state_s)(const struct isl_device *dev, void *state,
unreachable("Gen9 and earlier do not support indirect clear colors");
#endif
}
+
+#if GEN_GEN == 11
+ /*
+ * From BXML > GT > Shared Functions > vol5c Shared Functions >
+ * [Structure] RENDER_SURFACE_STATE [BDW+] > ClearColorConversionEnable:
+ *
+ * Project: Gen11
+ *
+ * "Enables Pixel backend hw to convert clear values into native format
+ * and write back to clear address, so that display and sampler can use
+ * the converted value for resolving fast cleared RTs."
+ *
+ * Summary:
+ * Clear color conversion must be enabled if the clear color is stored
+ * indirectly and fast color clears are enabled.
+ */
+ if (info->use_clear_address) {
+ s.ClearColorConversionEnable = true;
+ }
+#endif
+
#if GEN_GEN >= 9
if (!info->use_clear_address) {
s.RedClearColor = info->clear_color.u32[0];