[PATCH 1/1] drm/xe/xe2: Separate graphics_xe2 features to hpg and lpg

Juha-Pekka Heikkila juhapekka.heikkila at gmail.com
Thu Jul 25 14:19:11 UTC 2024


Separate graphics_xe2 to graphics_xe2hpg and graphics_xe2lpg. This is done to
be able to add XE_VRAM_FLAGS_NEED64K for xe2hpg. Without 64K pages xe2hpg
ccs decompression can result in corruption on display.

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
---
 drivers/gpu/drm/xe/xe_pci.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c
index f818aa69f3ca..599fb83f4e27 100644
--- a/drivers/gpu/drm/xe/xe_pci.c
+++ b/drivers/gpu/drm/xe/xe_pci.c
@@ -174,12 +174,20 @@ static const struct xe_graphics_desc graphics_xelpg = {
 		BIT(XE_HW_ENGINE_BCS8) | BIT(XE_HW_ENGINE_BCS0) | \
 		GENMASK(XE_HW_ENGINE_CCS3, XE_HW_ENGINE_CCS0)
 
-static const struct xe_graphics_desc graphics_xe2 = {
-	.name = "Xe2_LPG / Xe2_HPG",
+static const struct xe_graphics_desc graphics_xe2lpg = {
+	.name = "Xe2_LPG",
 
 	XE2_GFX_FEATURES,
 };
 
+static const struct xe_graphics_desc graphics_xe2hpg = {
+	.name = "Xe2_HPG",
+
+	XE2_GFX_FEATURES,
+
+	.vram_flags = XE_VRAM_FLAGS_NEED64K,
+};
+
 static const struct xe_media_desc media_xem = {
 	.name = "Xe_M",
 	.ver = 12,
@@ -361,8 +369,8 @@ static const struct gmdid_map graphics_ip_map[] = {
 	{ 1270, &graphics_xelpg },
 	{ 1271, &graphics_xelpg },
 	{ 1274, &graphics_xelpg },	/* Xe_LPG+ */
-	{ 2001, &graphics_xe2 },
-	{ 2004, &graphics_xe2 },
+	{ 2001, &graphics_xe2hpg },
+	{ 2004, &graphics_xe2lpg },
 };
 
 /* Map of GMD_ID values to media IP */
-- 
2.43.2



More information about the Intel-xe mailing list