diff options
author | Jason Ekstrand <[email protected]> | 2018-01-19 15:02:07 -0800 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2018-02-08 16:35:31 -0800 |
commit | 1e941a05283b6873d2501f17944e545f6c76166f (patch) | |
tree | a7846da77e07809b876c728c48325fc9a3479bc3 /src/intel | |
parent | 1810f965c8e490eac164732883d5242748b5911f (diff) |
intel/blorp: Use isl_aux_op instead of blorp_fast_clear_op
Reviewed-by: Topi Pohjolainen <[email protected]>
Reviewed-by: Nanley Chery <[email protected]>
Diffstat (limited to 'src/intel')
-rw-r--r-- | src/intel/blorp/blorp.h | 9 | ||||
-rw-r--r-- | src/intel/blorp/blorp_clear.c | 10 | ||||
-rw-r--r-- | src/intel/blorp/blorp_genX_exec.h | 16 | ||||
-rw-r--r-- | src/intel/blorp/blorp_priv.h | 2 | ||||
-rw-r--r-- | src/intel/vulkan/anv_blorp.c | 14 |
5 files changed, 16 insertions, 35 deletions
diff --git a/src/intel/blorp/blorp.h b/src/intel/blorp/blorp.h index 478a9af5ed1..f1be12ba91e 100644 --- a/src/intel/blorp/blorp.h +++ b/src/intel/blorp/blorp.h @@ -189,19 +189,12 @@ blorp_clear_attachments(struct blorp_batch *batch, bool clear_depth, float depth_value, uint8_t stencil_mask, uint8_t stencil_value); -enum blorp_fast_clear_op { - BLORP_FAST_CLEAR_OP_NONE = 0, - BLORP_FAST_CLEAR_OP_CLEAR, - BLORP_FAST_CLEAR_OP_RESOLVE_PARTIAL, - BLORP_FAST_CLEAR_OP_RESOLVE_FULL, -}; - void blorp_ccs_resolve(struct blorp_batch *batch, struct blorp_surf *surf, uint32_t level, uint32_t start_layer, uint32_t num_layers, enum isl_format format, - enum blorp_fast_clear_op resolve_op); + enum isl_aux_op resolve_op); void blorp_ccs_ambiguate(struct blorp_batch *batch, diff --git a/src/intel/blorp/blorp_clear.c b/src/intel/blorp/blorp_clear.c index 165dbca8c79..d205e5becae 100644 --- a/src/intel/blorp/blorp_clear.c +++ b/src/intel/blorp/blorp_clear.c @@ -322,7 +322,7 @@ blorp_fast_clear(struct blorp_batch *batch, params.y1 = y1; memset(¶ms.wm_inputs.clear_color, 0xff, 4*sizeof(float)); - params.fast_clear_op = BLORP_FAST_CLEAR_OP_CLEAR; + params.fast_clear_op = ISL_AUX_OP_FAST_CLEAR; get_fast_clear_rect(batch->blorp->isl_dev, surf->aux_surf, ¶ms.x0, ¶ms.y0, ¶ms.x1, ¶ms.y1); @@ -720,7 +720,7 @@ blorp_ccs_resolve(struct blorp_batch *batch, struct blorp_surf *surf, uint32_t level, uint32_t start_layer, uint32_t num_layers, enum isl_format format, - enum blorp_fast_clear_op resolve_op) + enum isl_aux_op resolve_op) { struct blorp_params params; @@ -759,11 +759,11 @@ blorp_ccs_resolve(struct blorp_batch *batch, params.y1 = ALIGN(params.y1, y_scaledown) / y_scaledown; if (batch->blorp->isl_dev->info->gen >= 9) { - assert(resolve_op == BLORP_FAST_CLEAR_OP_RESOLVE_FULL || - resolve_op == BLORP_FAST_CLEAR_OP_RESOLVE_PARTIAL); + assert(resolve_op == ISL_AUX_OP_FULL_RESOLVE || + resolve_op == ISL_AUX_OP_PARTIAL_RESOLVE); } else { /* Broadwell and earlier do not have a partial resolve */ - assert(resolve_op == BLORP_FAST_CLEAR_OP_RESOLVE_FULL); + assert(resolve_op == ISL_AUX_OP_FULL_RESOLVE); } params.fast_clear_op = resolve_op; params.num_layers = num_layers; diff --git a/src/intel/blorp/blorp_genX_exec.h b/src/intel/blorp/blorp_genX_exec.h index 1968460be05..8d007b818ad 100644 --- a/src/intel/blorp/blorp_genX_exec.h +++ b/src/intel/blorp/blorp_genX_exec.h @@ -750,21 +750,21 @@ blorp_emit_ps_config(struct blorp_batch *batch, ps.MaximumNumberofThreadsPerPSD = 64 - 2; switch (params->fast_clear_op) { - case BLORP_FAST_CLEAR_OP_NONE: + case ISL_AUX_OP_NONE: break; #if GEN_GEN >= 9 - case BLORP_FAST_CLEAR_OP_RESOLVE_PARTIAL: + case ISL_AUX_OP_PARTIAL_RESOLVE: ps.RenderTargetResolveType = RESOLVE_PARTIAL; break; - case BLORP_FAST_CLEAR_OP_RESOLVE_FULL: + case ISL_AUX_OP_FULL_RESOLVE: ps.RenderTargetResolveType = RESOLVE_FULL; break; #else - case BLORP_FAST_CLEAR_OP_RESOLVE_FULL: + case ISL_AUX_OP_FULL_RESOLVE: ps.RenderTargetResolveEnable = true; break; #endif - case BLORP_FAST_CLEAR_OP_CLEAR: + case ISL_AUX_OP_FAST_CLEAR: ps.RenderTargetFastClearEnable = true; break; default: @@ -852,12 +852,12 @@ blorp_emit_ps_config(struct blorp_batch *batch, ps.SamplerCount = 1; /* Up to 4 samplers */ switch (params->fast_clear_op) { - case BLORP_FAST_CLEAR_OP_NONE: + case ISL_AUX_OP_NONE: break; - case BLORP_FAST_CLEAR_OP_RESOLVE_FULL: + case ISL_AUX_OP_FULL_RESOLVE: ps.RenderTargetResolveEnable = true; break; - case BLORP_FAST_CLEAR_OP_CLEAR: + case ISL_AUX_OP_FAST_CLEAR: ps.RenderTargetFastClearEnable = true; break; default: diff --git a/src/intel/blorp/blorp_priv.h b/src/intel/blorp/blorp_priv.h index faa0af10d4a..ef3fc6d378e 100644 --- a/src/intel/blorp/blorp_priv.h +++ b/src/intel/blorp/blorp_priv.h @@ -192,7 +192,7 @@ struct blorp_params struct brw_blorp_surface_info dst; enum blorp_hiz_op hiz_op; bool full_surface_hiz_op; - enum blorp_fast_clear_op fast_clear_op; + enum isl_aux_op fast_clear_op; bool color_write_disable[4]; struct brw_blorp_wm_inputs wm_inputs; struct blorp_vs_inputs vs_inputs; diff --git a/src/intel/vulkan/anv_blorp.c b/src/intel/vulkan/anv_blorp.c index 3939173bb16..7d0ded3423c 100644 --- a/src/intel/vulkan/anv_blorp.c +++ b/src/intel/vulkan/anv_blorp.c @@ -1716,18 +1716,6 @@ anv_image_mcs_op(struct anv_cmd_buffer *cmd_buffer, blorp_batch_finish(&batch); } -static enum blorp_fast_clear_op -isl_to_blorp_fast_clear_op(enum isl_aux_op isl_op) -{ - switch (isl_op) { - case ISL_AUX_OP_FAST_CLEAR: return BLORP_FAST_CLEAR_OP_CLEAR; - case ISL_AUX_OP_FULL_RESOLVE: return BLORP_FAST_CLEAR_OP_RESOLVE_FULL; - case ISL_AUX_OP_PARTIAL_RESOLVE: return BLORP_FAST_CLEAR_OP_RESOLVE_PARTIAL; - default: - unreachable("Unsupported CCS/MCS aux op"); - } -} - void anv_image_ccs_op(struct anv_cmd_buffer *cmd_buffer, const struct anv_image *image, @@ -1796,7 +1784,7 @@ anv_image_ccs_op(struct anv_cmd_buffer *cmd_buffer, case ISL_AUX_OP_FULL_RESOLVE: case ISL_AUX_OP_PARTIAL_RESOLVE: blorp_ccs_resolve(&batch, &surf, level, base_layer, layer_count, - surf.surf->format, isl_to_blorp_fast_clear_op(ccs_op)); + surf.surf->format, ccs_op); break; case ISL_AUX_OP_AMBIGUATE: for (uint32_t a = 0; a < layer_count; a++) { |