diff options
author | Nanley Chery <[email protected]> | 2017-02-21 18:17:59 -0800 |
---|---|---|
committer | Nanley Chery <[email protected]> | 2017-03-02 13:17:54 -0800 |
commit | 258af3a856328934d30b7cdf626d5fdba76852f2 (patch) | |
tree | 1e1ddcfee7d58d39493aad7b14fb588c8b9fa4bd /src/intel | |
parent | 54d29ee65f65b4e8541745d83bc741e68147cd28 (diff) |
anv/image: Remove extra dependency on HiZ-specific variable
surf_usage is only useful to image views that may use HiZ buffers.
Storage image views don't use HiZ buffers.
v2: Update commit message and add an assertion.
Fixes: 055ff2ec521 ("anv: Replace anv_image_has_hiz() with ISL_AUX_USAGE_HIZ")
Signed-off-by: Nanley Chery <[email protected]>
Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/intel')
-rw-r--r-- | src/intel/vulkan/anv_image.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/intel/vulkan/anv_image.c b/src/intel/vulkan/anv_image.c index 4791465e48b..0c41ed301d3 100644 --- a/src/intel/vulkan/anv_image.c +++ b/src/intel/vulkan/anv_image.c @@ -180,6 +180,11 @@ make_surface(const struct anv_device *dev, /* Add a HiZ surface to a depth buffer that will be used for rendering. */ if (aspect == VK_IMAGE_ASPECT_DEPTH_BIT) { + /* We don't advertise that depth buffers could be used as storage + * images. + */ + assert(!(image->usage & VK_IMAGE_USAGE_STORAGE_BIT)); + /* Allow the user to control HiZ enabling. Disable by default on gen7 * because resolves are not currently implemented pre-BDW. */ @@ -738,7 +743,7 @@ anv_CreateImageView(VkDevice _device, .surf = &surface->isl, .view = &view, .aux_surf = &image->aux_surface.isl, - .aux_usage = surf_usage, + .aux_usage = image->aux_usage, .mocs = device->default_mocs); if (isl_has_matching_typed_storage_image_format(&device->info, @@ -755,7 +760,7 @@ anv_CreateImageView(VkDevice _device, .surf = &surface->isl, .view = &view, .aux_surf = &image->aux_surface.isl, - .aux_usage = surf_usage, + .aux_usage = image->aux_usage, .mocs = device->default_mocs); } else { anv_fill_buffer_surface_state(device, iview->storage_surface_state, |