[Mesa-dev] [PATCH 30/34] i965: Add new resolve hints full and partial
Ben Widawsky
ben at bwidawsk.net
Tue Jan 24 06:21:53 UTC 2017
Upper layers of the code will have the need to specify full or partial
resolves (more on this in the next patch). This code simply adds the new
enums and plumbs it in as minimally as necessary.
Signed-off-by: Ben Widawsky <ben at bwidawsk.net>
Acked-by: Daniel Stone <daniels at collabora.com>
Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
---
src/mesa/drivers/dri/i965/brw_blorp.c | 3 ++-
src/mesa/drivers/dri/i965/intel_mipmap_tree.h | 4 +++-
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.c b/src/mesa/drivers/dri/i965/brw_blorp.c
index 965a87c486..1addf5cf24 100644
--- a/src/mesa/drivers/dri/i965/brw_blorp.c
+++ b/src/mesa/drivers/dri/i965/brw_blorp.c
@@ -971,7 +971,8 @@ brw_blorp_resolve_color(struct brw_context *brw, struct intel_mipmap_tree *mt,
enum blorp_fast_clear_op resolve_op;
if (brw->gen >= 9) {
- if (surf.aux_usage == ISL_AUX_USAGE_CCS_E)
+ if (surf.aux_usage == ISL_AUX_USAGE_CCS_E &&
+ hint != INTEL_RESOLVE_HINT_CLEAR_COLOR)
resolve_op = BLORP_FAST_CLEAR_OP_RESOLVE_FULL;
else
resolve_op = BLORP_FAST_CLEAR_OP_RESOLVE_PARTIAL;
diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.h b/src/mesa/drivers/dri/i965/intel_mipmap_tree.h
index d5f2689edd..221387b4f8 100644
--- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.h
+++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.h
@@ -951,7 +951,9 @@ intel_miptree_used_for_rendering(const struct brw_context *brw,
*/
enum intel_resolve_hint {
INTEL_RESOLVE_HINT_NO_HINT = 0,
- INTEL_RESOLVE_HINT_IGNORE_CCS_E
+ INTEL_RESOLVE_HINT_IGNORE_CCS_E,
+ INTEL_RESOLVE_HINT_CLEAR_COLOR,
+ INTEL_RESOLVE_HINT_FULL,
};
bool
--
2.11.0
More information about the mesa-dev
mailing list