summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2018-02-23 20:45:26 -0800
committerJason Ekstrand <[email protected]>2018-03-01 14:07:58 -0800
commita0a319f16ef376d957ae9b5f3979a4e7745a554a (patch)
tree38485139e7daaad8d629647f812ada66e019faa3
parentd0f701d2f1fb76b9e004c5551c33f53042df98d2 (diff)
anv/cmd_buffer: Handle MCS identical to CCS_E in compute_aux_usage
This doesn't actually do anything because att_state->fast_clear is determined based on the return value of anv_layout_to_fast_clear_type which currently returns NONE for multisampled images. Reviewed-by: Samuel Iglesias Gonsálvez <[email protected]>
-rw-r--r--src/intel/vulkan/genX_cmd_buffer.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c
index ce546249b34..3d886b06eb1 100644
--- a/src/intel/vulkan/genX_cmd_buffer.c
+++ b/src/intel/vulkan/genX_cmd_buffer.c
@@ -235,14 +235,9 @@ color_attachment_compute_aux_usage(struct anv_device * device,
*/
assert(att_state->aux_usage != ISL_AUX_USAGE_NONE);
- if (att_state->aux_usage == ISL_AUX_USAGE_MCS) {
- att_state->input_aux_usage = ISL_AUX_USAGE_MCS;
- att_state->fast_clear = false;
- return;
- }
-
- if (att_state->aux_usage == ISL_AUX_USAGE_CCS_E) {
- att_state->input_aux_usage = ISL_AUX_USAGE_CCS_E;
+ if (att_state->aux_usage == ISL_AUX_USAGE_CCS_E ||
+ att_state->aux_usage == ISL_AUX_USAGE_MCS) {
+ att_state->input_aux_usage = att_state->aux_usage;
} else {
/* From the Sky Lake PRM, RENDER_SURFACE_STATE::AuxiliarySurfaceMode:
*
@@ -274,7 +269,8 @@ color_attachment_compute_aux_usage(struct anv_device * device,
}
}
- assert(iview->image->planes[0].aux_surface.isl.usage & ISL_SURF_USAGE_CCS_BIT);
+ assert(iview->image->planes[0].aux_surface.isl.usage &
+ (ISL_SURF_USAGE_CCS_BIT | ISL_SURF_USAGE_MCS_BIT));
const struct isl_format_layout *view_fmtl =
isl_format_get_layout(iview->planes[0].isl.format);