[PATCH v7 0/4] Cleaning up code related to VRAM regions and its initialization - part 2
Piórkowski, Piotr
piotr.piorkowski at intel.com
Fri Jun 27 10:03:04 UTC 2025
From: Piotr Piórkowski <piotr.piorkowski at intel.com>
As a follow-up to the earlier VRAM region cleanups, this patch series
focuses on further improving the flexibility and clarity of
the Xe driver's VRAM management.
This series focuses on preparing the VRAM region handling code for future
platforms, where a more dynamic representation of device and tile VRAM
regions will be required. Static allocation of these structures is replaced
with dynamic allocation to increase flexibility and improve maintainability.
Additionally, the initialization logic for device-wide and tile-local VRAM
regions is unified, replacing the previously separate code paths. This
simplification improves code clarity and facilitates future extensions
involving additional VRAM region types.
v2:
- fix doc comments in struct xe_vram_region
- remove unnecessary includes (Jani)
v3:
- move code from xe_vram_init_regions_managers to xe_tile_init_noalloc
(Matthew)
- replace ioremap_wc to devm_ioremap_wc for mapping VRAM BAR
(Matthew)
- Replace the tile id parameter with vram region in the xe_pf_begin
function.
v4:
- add new patch "Use devm_ioremap_wc for VRAM mapping and drop manual
unmap" (Matthew)
- add new patch "Move struct xe_vram_region to a dedicated header" (Jani)
- fix null pointer dereference in xe_assert when VRAM region for tile
hasn't been initialized (Michal)
v5:
- Fix build if CONFIG_DRM_XE_DEVMEM_MIRROR is enabled
v6:
- Fix build if CONFIG_DRM_XE_DISPLAY is enabled
v7:
- rebase after new changes related to SVM
Cc: Matthew Auld <matthew.auld at intel.com>
Cc: Stuart Summers <stuart.summers at intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
Cc: Jani Nikula <jani.nikula at intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko at intel.com>
Piotr Piórkowski (4):
drm/xe: Use devm_ioremap_wc for VRAM mapping and drop manual unmap
drm/xe: Use dynamic allocation for tile and device VRAM region
structures
drm/xe: Move struct xe_vram_region to a dedicated header
drm/xe: Unify the initialization of VRAM regions
drivers/gpu/drm/xe/display/xe_fb_pin.c | 3 +-
drivers/gpu/drm/xe/display/xe_plane_initial.c | 3 +-
drivers/gpu/drm/xe/xe_assert.h | 4 +-
drivers/gpu/drm/xe/xe_bo.c | 1 +
drivers/gpu/drm/xe/xe_bo_types.h | 1 +
drivers/gpu/drm/xe/xe_device.c | 20 +++
drivers/gpu/drm/xe/xe_device_types.h | 62 +------
drivers/gpu/drm/xe/xe_gt_pagefault.c | 13 +-
drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c | 3 +-
drivers/gpu/drm/xe/xe_migrate.c | 19 +-
drivers/gpu/drm/xe/xe_pci.c | 6 +
drivers/gpu/drm/xe/xe_query.c | 5 +-
drivers/gpu/drm/xe/xe_svm.c | 27 +--
drivers/gpu/drm/xe/xe_tile.c | 58 ++++---
drivers/gpu/drm/xe/xe_tile.h | 13 +-
drivers/gpu/drm/xe/xe_ttm_stolen_mgr.c | 7 +-
drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 19 +-
drivers/gpu/drm/xe/xe_ttm_vram_mgr.h | 3 +-
drivers/gpu/drm/xe/xe_vram.c | 163 +++++++++++-------
drivers/gpu/drm/xe/xe_vram.h | 5 +
drivers/gpu/drm/xe/xe_vram_types.h | 82 +++++++++
21 files changed, 318 insertions(+), 199 deletions(-)
create mode 100644 drivers/gpu/drm/xe/xe_vram_types.h
--
2.34.1
More information about the Intel-xe
mailing list