All of lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-xe] [PATCH] drm/xe: Fix MTL+ stolen memory mapping
@ 2023-07-25 16:43 Lucas De Marchi
  2023-07-25 17:14 ` Ceraolo Spurio, Daniele
                   ` (8 more replies)
  0 siblings, 9 replies; 11+ messages in thread
From: Lucas De Marchi @ 2023-07-25 16:43 UTC (permalink / raw)
  To: intel-xe; +Cc: Lucas De Marchi, Matt Roper

Based on commit 8d8d062be6b9 ("drm/i915/mtl: Fix MTL stolen memory GGTT
mapping"). For stolen on MTL and beyond, the address in the PTE is the
offset from DSM base. While at it, update the comments explaining each
part of the calculation.

Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
---

Untested as stolen in MTL is supposedly to be disabled. Need to find a
proper way to test it.

 drivers/gpu/drm/xe/xe_ttm_stolen_mgr.c | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_ttm_stolen_mgr.c b/drivers/gpu/drm/xe/xe_ttm_stolen_mgr.c
index 21ecc734f10a..271b3fba4129 100644
--- a/drivers/gpu/drm/xe/xe_ttm_stolen_mgr.c
+++ b/drivers/gpu/drm/xe/xe_ttm_stolen_mgr.c
@@ -94,11 +94,22 @@ static u32 detect_bar2_integrated(struct xe_device *xe, struct xe_ttm_stolen_mgr
 
 	ggc = xe_mmio_read32(xe_root_mmio_gt(xe), GGC);
 
-	/* check GGMS, should be fixed 0x3 (8MB) */
+	/*
+	 * Check GGMS: it should be fixed 0x3 (8MB), which corresponds to the
+	 * GTT size
+	 */
 	if (drm_WARN_ON(&xe->drm, (ggc & GGMS_MASK) != GGMS_MASK))
 		return 0;
 
-	mgr->stolen_base = mgr->io_base = pci_resource_start(pdev, 2) + SZ_8M;
+	/*
+	 * Graphics >= 1270 uses the offset to the GSMBASE as address in the
+	 * PTEs, together with the DM flag being set. Previously there was no
+	 * such flag so the address was the io_base.
+	 *
+	 * DSMBASE = GSMBASE + 8MB
+	 */
+	mgr->stolen_base = SZ_8M;
+	mgr->io_base = pci_resource_start(pdev, 2) + mgr->stolen_base;
 
 	/* return valid GMS value, -EIO if invalid */
 	gms = REG_FIELD_GET(GMS_MASK, ggc);
-- 
2.40.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2023-07-25 18:07 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-25 16:43 [Intel-xe] [PATCH] drm/xe: Fix MTL+ stolen memory mapping Lucas De Marchi
2023-07-25 17:14 ` Ceraolo Spurio, Daniele
2023-07-25 17:15 ` [Intel-xe] ✓ CI.Patch_applied: success for " Patchwork
2023-07-25 17:15 ` [Intel-xe] ✗ CI.checkpatch: warning " Patchwork
2023-07-25 17:17 ` [Intel-xe] ✓ CI.KUnit: success " Patchwork
2023-07-25 17:20 ` [Intel-xe] [PATCH] " Matt Roper
2023-07-25 18:07   ` Lucas De Marchi
2023-07-25 17:21 ` [Intel-xe] ✓ CI.Build: success for " Patchwork
2023-07-25 17:21 ` [Intel-xe] ✓ CI.Hooks: " Patchwork
2023-07-25 17:22 ` [Intel-xe] ✓ CI.checksparse: " Patchwork
2023-07-25 17:51 ` [Intel-xe] ○ CI.BAT: info " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.