freedreno+turnip: Add a6xx gen4 support
authorRob Clark <robdclark@chromium.org>
Thu, 8 Jul 2021 18:47:15 +0000 (11:47 -0700)
committerMarge Bot <eric+marge@anholt.net>
Wed, 14 Jul 2021 01:58:00 +0000 (01:58 +0000)
This adds support for a660 and a635.

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

docs/relnotes/new_features.txt
src/freedreno/common/freedreno_devices.py

index f00cbf6..e23403e 100644 (file)
@@ -22,3 +22,4 @@ GL_ARB_sample_locations on zink
 GL_ARB_sparse_buffer on zink
 GL_ARB_shader_group_vote on zink
 DRM format modifiers on zink
+freedreno+turnip: Initial support for a6xx gen4 (a660, a635)
index 119598a..856fa8c 100644 (file)
@@ -212,6 +212,20 @@ a6xx_gen3 = dict(
         has_sample_locations = True,
     )
 
+# a635, a650:
+a6xx_gen4 = dict(
+        fibers_per_sp = 128 * 2 * 16,
+        reg_size_vec4 = 64,
+        supports_multiview_mask = True,
+        has_z24uint_s8uint = True,
+        tess_use_shared = True,
+        storage_16bit = True,
+        has_tex_filter_cubic = True,
+        has_sample_locations = True,
+        has_cp_reg_write = False,
+        has_8bpp_ubwc = False,
+    )
+
 add_gpus([
         GPUId(615),
         GPUId(618),
@@ -257,6 +271,28 @@ add_gpus([
         SP_UNKNOWN_A0F8 = 2,
     ))
 
+add_gpus([
+        GPUId(635, "Adreno 7c Gen 3"),
+    ], A6xxGPUInfo(
+        a6xx_gen4,
+        num_sp_cores = 2,
+        num_ccu = 2,
+        RB_UNKNOWN_8E04_blit = 0x00100000,
+        PC_UNKNOWN_9805 = 1,
+        SP_UNKNOWN_A0F8 = 1,
+    ))
+
+add_gpus([
+        GPUId(660),
+    ], A6xxGPUInfo(
+        a6xx_gen4,
+        num_sp_cores = 3,
+        num_ccu = 3,
+        RB_UNKNOWN_8E04_blit = 0x04100000,
+        PC_UNKNOWN_9805 = 2,
+        SP_UNKNOWN_A0F8 = 2,
+    ))
+
 template = """\
 /* Copyright (C) 2021 Google, Inc.
  *