Mesa (master): iris: Update the surface state clear color address when available.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Apr 30 15:32:43 UTC 2019


Module: Mesa
Branch: master
Commit: cf3cadacdfe7275c44141685ca92697ca97784b1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=cf3cadacdfe7275c44141685ca92697ca97784b1

Author: Rafael Antognolli <rafael.antognolli at intel.com>
Date:   Tue Apr  2 17:10:26 2019 -0700

iris: Update the surface state clear color address when available.

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/gallium/drivers/iris/iris_state.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c
index 91659f4f67b..60d409b5301 100644
--- a/src/gallium/drivers/iris/iris_state.c
+++ b/src/gallium/drivers/iris/iris_state.c
@@ -1728,7 +1728,15 @@ fill_surface_state(struct isl_device *isl_dev,
       f.aux_surf = &res->aux.surf;
       f.aux_usage = aux_usage;
       f.aux_address = res->aux.bo->gtt_offset + res->aux.offset;
-      f.clear_color = res->aux.clear_color;
+
+      struct iris_bo *clear_bo = NULL;
+      uint64_t clear_offset = 0;
+      f.clear_color =
+         iris_resource_get_clear_color(res, &clear_bo, &clear_offset);
+      if (clear_bo) {
+         f.clear_address = clear_bo->gtt_offset + clear_offset;
+         f.use_clear_address = isl_dev->info->gen > 9;
+      }
    }
 
    isl_surf_fill_state_s(isl_dev, map, &f);




More information about the mesa-commit mailing list