intel/dev: Split .num_subslices out of GEN12_FEATURES macro
authorJordan Justen <jordan.l.justen@intel.com>
Mon, 4 May 2020 20:29:32 +0000 (13:29 -0700)
committerMarge Bot <eric+marge@anholt.net>
Sat, 9 May 2020 01:39:43 +0000 (01:39 +0000)
The .num_subslices field makes it problematic to reuse the
GEN12_FEATURES macro in other macros.

This also fixes the number of L3 banks for tgl gt1, except that this
was already fixed by Jason (dynamically) in:

86f67952d31 ("intel/devinfo: Compute the correct L3$ size for Gen12")

Cc: 20.1 <mesa-stable@lists.freedesktop.org>
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by : Lionel Landwerlin <lionel.g.landwerlin@intel.com>

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4955>

src/intel/dev/gen_device_info.c

index 5aecb4b7f19e316cefdeab127ef9906f9bf8c6ac..0fd8339ee40c86fc5e7e7b3102c95310572ce285 100644 (file)
@@ -1040,7 +1040,7 @@ static const struct gen_device_info gen_device_info_ehl_4 = {
       GEN12_URB_MIN_MAX_ENTRIES,                    \
    }
 
-#define GEN12_FEATURES(_gt, _slices, _dual_subslices, _l3)      \
+#define GEN12_FEATURES(_gt, _slices, _l3)                       \
    GEN8_FEATURES,                                               \
    GEN12_HW_INFO,                                               \
    .has_64bit_float = false,                                    \
@@ -1049,17 +1049,20 @@ static const struct gen_device_info gen_device_info_ehl_4 = {
    .gt = _gt, .num_slices = _slices, .l3_banks = _l3,           \
    .simulator_id = 22,                                          \
    .urb.size = (_gt) == 1 ? 512 : 1024,                         \
-   .num_subslices = _dual_subslices,                            \
    .num_eu_per_subslice = 16
 
 #define dual_subslices(args...) { args, }
 
+#define GEN12_GT_FEATURES(_gt)                                  \
+   GEN12_FEATURES(1, 1, _gt == 1 ? 4 : 8),                      \
+   .num_subslices = dual_subslices(_gt == 1 ? 2 : 6)
+
 static const struct gen_device_info gen_device_info_tgl_gt1 = {
-   GEN12_FEATURES(1, 1, dual_subslices(2), 8),
+   GEN12_GT_FEATURES(1),
 };
 
 static const struct gen_device_info gen_device_info_tgl_gt2 = {
-   GEN12_FEATURES(2, 1, dual_subslices(6), 8),
+   GEN12_GT_FEATURES(2),
 };
 
 static void