[Mesa-dev] [PATCH 5/5] anv: Remove the finishme for CCS_E with storage images

Jason Ekstrand jason at jlekstrand.net
Wed Feb 1 22:40:41 UTC 2017


The data port can't handle CCS at all so replace the finishme with
better comments.
---
 src/intel/vulkan/anv_image.c | 21 +++++++--------------
 1 file changed, 7 insertions(+), 14 deletions(-)

diff --git a/src/intel/vulkan/anv_image.c b/src/intel/vulkan/anv_image.c
index 94436ca..e59ef4d 100644
--- a/src/intel/vulkan/anv_image.c
+++ b/src/intel/vulkan/anv_image.c
@@ -225,22 +225,15 @@ make_surface(const struct anv_device *dev,
             /* For images created without MUTABLE_FORMAT_BIT set, we know that
              * they will always be used with the original format.  In
              * particular, they will always be used with a format that
-             * supports color compression.  This means that it's safe to just
-             * leave compression on at all times for these formats.
+             * supports color compression.  If it's never used as a storage
+             * image, then it will only be used through the sampler or the as
+             * a render target.  This means that it's safe to just leave
+             * compression on at all times for these formats.
              */
-            if (!(vk_info->flags & VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT) &&
+            if (!(vk_info->usage & VK_IMAGE_USAGE_STORAGE_BIT) &&
+                !(vk_info->flags & VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT) &&
                 isl_format_supports_ccs_e(&dev->info, format)) {
-               if (vk_info->usage & VK_IMAGE_USAGE_STORAGE_BIT) {
-                  /*
-                   * For now, we leave compression off for anything that may
-                   * be used as a storage image.  This is because accessing
-                   * storage images may involve ccs-incompatible views or even
-                   * untyped messages which don't support compression at all.
-                   */
-                  anv_finishme("Enable CCS for storage images");
-               } else {
-                  image->aux_usage = ISL_AUX_USAGE_CCS_E;
-               }
+               image->aux_usage = ISL_AUX_USAGE_CCS_E;
             }
          }
       }
-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list