From f08d8c849e0df3703800a4471039a0297455951f Mon Sep 17 00:00:00 2001 From: Jordan Justen Date: Fri, 15 May 2020 02:59:42 -0700 Subject: [PATCH] intel/isl: Build gen 12.5 Signed-off-by: Jordan Justen Reviewed-by: Jason Ekstrand Part-of: --- src/intel/Android.isl.mk | 20 ++++++++++++++++++++ src/intel/Makefile.sources | 6 ++++++ src/intel/isl/isl.c | 6 +++++- src/intel/isl/isl.h | 4 ++++ src/intel/isl/isl_priv.h | 3 +++ src/intel/isl/meson.build | 8 +++++++- 6 files changed, 45 insertions(+), 2 deletions(-) diff --git a/src/intel/Android.isl.mk b/src/intel/Android.isl.mk index 77d0936af09..c151914d29a 100644 --- a/src/intel/Android.isl.mk +++ b/src/intel/Android.isl.mk @@ -199,6 +199,25 @@ LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_genxml include $(MESA_COMMON_MK) include $(BUILD_STATIC_LIBRARY) +# --------------------------------------- +# Build libmesa_isl_gen125 +# --------------------------------------- + +include $(CLEAR_VARS) + +LOCAL_MODULE := libmesa_isl_gen125 + +LOCAL_SRC_FILES := $(ISL_GEN125_FILES) + +LOCAL_CFLAGS := -DGEN_VERSIONx10=125 + +LOCAL_C_INCLUDES := $(LIBISL_GENX_COMMON_INCLUDES) + +LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_genxml + +include $(MESA_COMMON_MK) +include $(BUILD_STATIC_LIBRARY) + # --------------------------------------- # Build libmesa_isl_tiled_memcpy # --------------------------------------- @@ -269,6 +288,7 @@ LOCAL_WHOLE_STATIC_LIBRARIES := \ libmesa_isl_gen9 \ libmesa_isl_gen11 \ libmesa_isl_gen12 \ + libmesa_isl_gen125 \ libmesa_genxml \ libmesa_isl_tiled_memcpy diff --git a/src/intel/Makefile.sources b/src/intel/Makefile.sources index 9169f36ef0b..f0eb1cf48f8 100644 --- a/src/intel/Makefile.sources +++ b/src/intel/Makefile.sources @@ -239,6 +239,12 @@ ISL_GEN12_FILES = \ isl/isl_emit_depth_stencil.c \ isl/isl_surface_state.c +ISL_GEN125_FILES = \ + isl/isl_gen12.c \ + isl/isl_gen12.h \ + isl/isl_emit_depth_stencil.c \ + isl/isl_surface_state.c + ISL_GENERATED_FILES = \ isl/isl_format_layout.c diff --git a/src/intel/isl/isl.c b/src/intel/isl/isl.c index f1849c0515a..e5d324a537c 100644 --- a/src/intel/isl/isl.c +++ b/src/intel/isl/isl.c @@ -2219,7 +2219,11 @@ isl_surf_get_ccs_surf(const struct isl_device *dev, isl_gen11_##func(__VA_ARGS__); \ break; \ case 12: \ - isl_gen12_##func(__VA_ARGS__); \ + if (ISL_DEV_IS_GEN12HP(dev)) { \ + isl_gen125_##func(__VA_ARGS__); \ + } else { \ + isl_gen12_##func(__VA_ARGS__); \ + } \ break; \ default: \ assert(!"Unknown hardware generation"); \ diff --git a/src/intel/isl/isl.h b/src/intel/isl/isl.h index 5ed615a8b53..8de60d7584f 100644 --- a/src/intel/isl/isl.h +++ b/src/intel/isl/isl.h @@ -85,6 +85,10 @@ struct brw_image_param; #define ISL_DEV_IS_BAYTRAIL(__dev) ((__dev)->info->is_baytrail) #endif +#ifndef ISL_DEV_IS_GEN12HP +#define ISL_DEV_IS_GEN12HP(__dev) (gen_device_info_is_12hp((__dev)->info)) +#endif + #ifndef ISL_DEV_USE_SEPARATE_STENCIL /** * You can define this as a compile-time constant in the CFLAGS. For example, diff --git a/src/intel/isl/isl_priv.h b/src/intel/isl/isl_priv.h index a203ce2d651..9a382711856 100644 --- a/src/intel/isl/isl_priv.h +++ b/src/intel/isl/isl_priv.h @@ -232,6 +232,9 @@ _isl_memcpy_tiled_to_linear_sse41(uint32_t xt1, uint32_t xt2, # define genX(x) gen12_##x # include "isl_genX_priv.h" # undef genX +# define genX(x) gen125_##x +# include "isl_genX_priv.h" +# undef genX #endif #endif /* ISL_PRIV_H */ diff --git a/src/intel/isl/meson.build b/src/intel/isl/meson.build index ad84cc4238c..35adc647106 100644 --- a/src/intel/isl/meson.build +++ b/src/intel/isl/meson.build @@ -53,10 +53,16 @@ isl_gen12_files = files( 'isl_gen12.h', ) +isl_gen125_files = files( + 'isl_gen12.c', + 'isl_gen12.h', +) + isl_gen_libs = [] foreach g : [['40', isl_gen4_files], ['50', []], ['60', isl_gen6_files], ['70', isl_gen7_files], ['75', []], ['80', isl_gen8_files], - ['90', isl_gen9_files], ['110', []], ['120', isl_gen12_files]] + ['90', isl_gen9_files], ['110', []], ['120', isl_gen12_files], + ['125', isl_gen12_files]] _gen = g[0] isl_gen_libs += static_library( 'isl_gen@0@'.format(_gen),