summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTopi Pohjolainen <topi.pohjolainen@intel.com>2017-06-28 10:04:10 +0300
committerTopi Pohjolainen <topi.pohjolainen@intel.com>2017-07-21 11:04:03 +0300
commitd83dd52199a09020f0fc149923f8e15586a5ee07 (patch)
treee5f869fcacd44a1f7fb78d46fa49a82dfddeb706
parentc1a29e104cc585ad3219b12d09f532a129d68dad (diff)
i965/miptree: Prepare has_color_unresolved() for isl based
Signed-off-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
-rw-r--r--src/mesa/drivers/dri/i965/intel_mipmap_tree.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
index 56f524abca..3cbdf3c938 100644
--- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
+++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
@@ -2197,7 +2197,11 @@ intel_miptree_has_color_unresolved(const struct intel_mipmap_tree *mt,
num_levels = last_level - start_level + 1;
for (uint32_t level = start_level; level <= last_level; level++) {
- const uint32_t level_layers = MIN2(num_layers, mt->level[level].depth);
+ uint32_t level_layers = mt->surf.size > 0 ?
+ get_num_phys_layers(&mt->surf, level) : mt->level[level].depth;
+
+ level_layers = MIN2(num_layers, level_layers);
+
for (unsigned a = 0; a < level_layers; a++) {
enum isl_aux_state aux_state =
intel_miptree_get_aux_state(mt, level, start_layer + a);