Mesa (main): freedreno: Move a6xx specific screen init

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Sep 13 17:40:58 UTC 2021


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

Author: Rob Clark <robdclark at chromium.org>
Date:   Sun Sep 12 15:57:01 2021 -0700

freedreno: Move a6xx specific screen init

Signed-off-by: Rob Clark <robdclark at chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12820>

---

 src/gallium/drivers/freedreno/a6xx/fd6_screen.c  |  4 ++++
 src/gallium/drivers/freedreno/freedreno_screen.c | 10 ++--------
 2 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_screen.c b/src/gallium/drivers/freedreno/a6xx/fd6_screen.c
index a0f1aebb76d..ff34551651f 100644
--- a/src/gallium/drivers/freedreno/a6xx/fd6_screen.c
+++ b/src/gallium/drivers/freedreno/a6xx/fd6_screen.c
@@ -146,6 +146,10 @@ fd6_screen_init(struct pipe_screen *pscreen)
 
    screen->max_rts = A6XX_MAX_RENDER_TARGETS;
 
+   screen->ccu_offset_bypass = screen->info->num_ccu * A6XX_CCU_DEPTH_SIZE;
+   screen->ccu_offset_gmem = (screen->gmemsize_bytes -
+         screen->info->num_ccu * A6XX_CCU_GMEM_COLOR_SIZE);
+
    /* Currently only FB_READ forces GMEM path, mostly because we'd have to
     * deal with cmdstream patching otherwise..
     */
diff --git a/src/gallium/drivers/freedreno/freedreno_screen.c b/src/gallium/drivers/freedreno/freedreno_screen.c
index 5c077f2bf54..15fb442ef89 100644
--- a/src/gallium/drivers/freedreno/freedreno_screen.c
+++ b/src/gallium/drivers/freedreno/freedreno_screen.c
@@ -1035,6 +1035,8 @@ fd_screen_create(struct fd_device *dev, struct renderonly *ro,
       goto fail;
    }
 
+   screen->info = info;
+
    /* explicitly checking for GPU revisions that are known to work.  This
     * may be overly conservative for a3xx, where spoofing the gpu_id with
     * the blob driver seems to generate identical cmdstream dumps.  But
@@ -1067,14 +1069,6 @@ fd_screen_create(struct fd_device *dev, struct renderonly *ro,
       goto fail;
    }
 
-   screen->info = info;
-
-   if (is_a6xx(screen)) {
-      screen->ccu_offset_bypass = screen->info->num_ccu * A6XX_CCU_DEPTH_SIZE;
-      screen->ccu_offset_gmem = (screen->gmemsize_bytes -
-         screen->info->num_ccu * A6XX_CCU_GMEM_COLOR_SIZE);
-   }
-
    /* fdN_screen_init() should set this: */
    assert(screen->primtypes);
    screen->primtypes_mask = 0;



More information about the mesa-commit mailing list