On systems with media GT, extra latency is added when accessing stolen memory when the GT is in MC6.
Simply disable allocating stolen memory for framebuffers when media gt is found. Thanks to the previous patch, it will be possible to preserve the contents. Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/work_items/7513 Reviewed-by: Matthew Auld <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Maarten Lankhorst <[email protected]> --- drivers/gpu/drm/xe/display/xe_display_bo.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/gpu/drm/xe/display/xe_display_bo.c b/drivers/gpu/drm/xe/display/xe_display_bo.c index f5102cd0e95d6..9385026a80b97 100644 --- a/drivers/gpu/drm/xe/display/xe_display_bo.c +++ b/drivers/gpu/drm/xe/display/xe_display_bo.c @@ -131,6 +131,14 @@ bool xe_display_bo_fbdev_prefer_stolen(struct xe_device *xe, unsigned int size) if (IS_DGFX(xe)) return false; + /* + * Avoid stolen memory when the media_gt exists, + * because a lot of latency is added when media gt is in MC6 + */ + if (xe_device_get_root_tile(xe)->media_gt) + return false; + + /* machine hang when doing lots of LMEMBAR accesses */ if (XE_DEVICE_WA(xe, 22019338487_display)) return false; -- 2.53.0
