diff --git a/src/intel/decoder/intel_decoder.c b/src/intel/decoder/intel_decoder.c
index e037185a6b8..328aa4aac27 100644
--- a/src/intel/decoder/intel_decoder.c
+++ b/src/intel/decoder/intel_decoder.c
@@ -880,6 +880,7 @@ get_embedded_xml_data_by_name(const char *filename,
{ "gen125.xml", 125 },
{ "xe2.xml", 200 },
{ "xe3.xml", 300 },
+ { "xe3p.xml", 350 },
};
int num = -1;
diff --git a/src/intel/genxml/genX_cl_pack.h b/src/intel/genxml/genX_cl_pack.h
index a3b60c04abf..92b2b2c7041 100644
--- a/src/intel/genxml/genX_cl_pack.h
+++ b/src/intel/genxml/genX_cl_pack.h
@@ -35,6 +35,8 @@
# include "genxml/xe2_cl_pack.h"
#elif (GFX_VERx10 == 300)
# include "genxml/xe3_cl_pack.h"
+#elif (GFX_VERx10 == 350)
+# include "genxml/xe3p_cl_pack.h"
#else
# error "Need to add a pack header include for this gen"
#endif
diff --git a/src/intel/genxml/genX_pack.h b/src/intel/genxml/genX_pack.h
index 8779df3febc..d253c75f71a 100644
--- a/src/intel/genxml/genX_pack.h
+++ b/src/intel/genxml/genX_pack.h
@@ -54,6 +54,8 @@
# include "genxml/xe2_pack.h"
#elif (GFX_VERx10 == 300)
# include "genxml/xe3_pack.h"
+#elif (GFX_VERx10 == 350)
+# include "genxml/xe3p_pack.h"
#else
# error "Need to add a pack header include for this gen"
#endif
diff --git a/src/intel/genxml/genX_rt_pack.h b/src/intel/genxml/genX_rt_pack.h
index 3e915ed063c..3d49074160a 100644
--- a/src/intel/genxml/genX_rt_pack.h
+++ b/src/intel/genxml/genX_rt_pack.h
@@ -36,6 +36,8 @@
# include "genxml/xe2_rt_pack.h"
#elif (GFX_VERx10 == 300)
# include "genxml/xe3_rt_pack.h"
+#elif (GFX_VERx10 == 350)
+# include "genxml/xe3p_rt_pack.h"
#else
# error "Need to add a pack header include for this gen"
#endif
diff --git a/src/intel/genxml/genX_video_pack.h b/src/intel/genxml/genX_video_pack.h
index 0c1cc89cb15..d2ef2ddb935 100644
--- a/src/intel/genxml/genX_video_pack.h
+++ b/src/intel/genxml/genX_video_pack.h
@@ -54,6 +54,8 @@
# include "genxml/xe2_video_pack.h"
#elif (GFX_VERx10 == 300)
# include "genxml/xe3_video_pack.h"
+#elif (GFX_VERx10 == 350)
+# include "genxml/xe3p_video_pack.h"
#else
# error "Need to add a pack header include for this gen"
#endif
diff --git a/src/intel/genxml/gen_bits_header.py b/src/intel/genxml/gen_bits_header.py
index 9024cf9a15a..9c0efaecf2e 100644
--- a/src/intel/genxml/gen_bits_header.py
+++ b/src/intel/genxml/gen_bits_header.py
@@ -82,6 +82,7 @@ static inline uint32_t ATTRIBUTE_PURE
${item.token_name}_${prop}(const struct intel_device_info *devinfo)
{
switch (devinfo->verx10) {
+ case 350: return ${item.get_prop(prop, 35)};
case 300: return ${item.get_prop(prop, 30)};
case 200: return ${item.get_prop(prop, 20)};
case 125: return ${item.get_prop(prop, 12.5)};
diff --git a/src/intel/genxml/gen_macros.h b/src/intel/genxml/gen_macros.h
index aac52bc7f04..d62e38e0070 100644
--- a/src/intel/genxml/gen_macros.h
+++ b/src/intel/genxml/gen_macros.h
@@ -98,6 +98,9 @@
#elif (GFX_VERx10 == 300)
# define GENX(X) GFX30_##X
# define genX(x) gfx30_##x
+#elif (GFX_VERx10 == 350)
+# define GENX(X) GFX35_##X
+# define genX(x) gfx35_##x
#else
# error "Need to add prefixing macros for this gen"
#endif
diff --git a/src/intel/genxml/intel_genxml.py b/src/intel/genxml/intel_genxml.py
index 88f36037150..0e80da08bdc 100755
--- a/src/intel/genxml/intel_genxml.py
+++ b/src/intel/genxml/intel_genxml.py
@@ -209,6 +209,8 @@ default_imports = OrderedDict([
('xe2_rt.xml', ('gen125_rt.xml',)),
('xe3.xml', ('xe2.xml',)),
('xe3_rt.xml', ('xe2_rt.xml',)),
+ ('xe3p.xml', ('gen300.xml',)),
+ ('xe3p_rt.xml', ('gen300_rt.xml',)),
])
known_genxml_files = list(default_imports.keys())
diff --git a/src/intel/genxml/meson.build b/src/intel/genxml/meson.build
index 9a6104adaf6..72bfd73b7f6 100644
--- a/src/intel/genxml/meson.build
+++ b/src/intel/genxml/meson.build
@@ -15,12 +15,14 @@ gen_xml_files = [
'gen125.xml',
'xe2.xml',
'xe3.xml',
+ 'xe3p.xml',
]
gen_xml_rt_files = [
'gen125_rt.xml',
'xe2_rt.xml',
'xe3_rt.xml',
+ 'xe3p_rt.xml',
]
gen_pack_header_deps = files('intel_genxml.py', 'util.py')
diff --git a/src/intel/genxml/xe3p.xml b/src/intel/genxml/xe3p.xml
new file mode 100644
index 00000000000..cfd51bb30b2
--- /dev/null
+++ b/src/intel/genxml/xe3p.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/src/intel/genxml/xe3p_rt.xml b/src/intel/genxml/xe3p_rt.xml
new file mode 100644
index 00000000000..36be2ef05a8
--- /dev/null
+++ b/src/intel/genxml/xe3p_rt.xml
@@ -0,0 +1,4 @@
+
+
+
+