diff options
| author | Matthew Brost <matthew.brost@intel.com> | 2025-04-03 11:24:43 +0100 |
|---|---|---|
| committer | Matthew Auld <matthew.auld@intel.com> | 2025-04-04 11:41:01 +0100 |
| commit | 045448da87bfb1542d6553d9bd6f66e2cddb99ed (patch) | |
| tree | 1d38580d3fa86837ac4e5dcfbc9aa0fecd3fd73e /drivers/gpu/drm/xe/xe_sa.c | |
| parent | 86f69c26113c3b35967f29db052d40a10317cac0 (diff) | |
| download | linux-next-045448da87bfb1542d6553d9bd6f66e2cddb99ed.tar.gz linux-next-045448da87bfb1542d6553d9bd6f66e2cddb99ed.zip | |
drm/xe: Add XE_BO_FLAG_PINNED_NORESTORE
Not all BOs need to be restored on resume / d3cold exit, add
XE_BO_FLAG_PINNED_NO_RESTORE which skips restoring of BOs rather just
allocates VRAM for the BO. This should slightly speedup resume / d3cold
exit flows.
Marking GuC ADS, GuC CT, GuC log, GuC PC, and SA as NORESTORE.
v2:
- s/WONTNEED/NORESTORE (Vivi)
- Rebase on newly added g2g and backup object flow
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
Cc: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://lore.kernel.org/r/20250403102440.266113-11-matthew.auld@intel.com
Diffstat (limited to 'drivers/gpu/drm/xe/xe_sa.c')
| -rw-r--r-- | drivers/gpu/drm/xe/xe_sa.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/xe/xe_sa.c b/drivers/gpu/drm/xe/xe_sa.c index f8fe61e25518..1d43e183ca21 100644 --- a/drivers/gpu/drm/xe/xe_sa.c +++ b/drivers/gpu/drm/xe/xe_sa.c @@ -60,7 +60,8 @@ struct xe_sa_manager *__xe_sa_bo_manager_init(struct xe_tile *tile, u32 size, u3 bo = xe_managed_bo_create_pin_map(xe, tile, size, XE_BO_FLAG_VRAM_IF_DGFX(tile) | XE_BO_FLAG_GGTT | - XE_BO_FLAG_GGTT_INVALIDATE); + XE_BO_FLAG_GGTT_INVALIDATE | + XE_BO_FLAG_PINNED_NORESTORE); if (IS_ERR(bo)) { drm_err(&xe->drm, "Failed to prepare %uKiB BO for SA manager (%pe)\n", size / SZ_1K, bo); |
