From: Brian Welty Date: Mon, 25 Sep 2023 21:02:32 +0000 (-0700) Subject: drm/xe: Replace xe_ttm_vram_mgr.tile with xe_mem_region X-Git-Tag: v6.8-rc1~111^2~7^2~236 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4e002016a1e5b5d0b29191a82d4f561f175f3d33;p=thirdparty%2Flinux.git drm/xe: Replace xe_ttm_vram_mgr.tile with xe_mem_region Replace the xe_ttm_vram_mgr.tile pointer with a xe_mem_region pointer instead. The former is currently unused. TTM VRAM regions are exposing device vram and is better to store a pointer directly to the xe_mem_region instead of the tile. This allows to cleanup unnecessary usage of xe_tile from xe_bo.c in later patch. Signed-off-by: Brian Welty Reviewed-by: Matthew Brost Signed-off-by: Rodrigo Vivi --- diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c index 285791eb4a796..953e5dc0fd808 100644 --- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c +++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c @@ -358,12 +358,11 @@ int __xe_ttm_vram_mgr_init(struct xe_device *xe, struct xe_ttm_vram_mgr *mgr, int xe_ttm_vram_mgr_init(struct xe_tile *tile, struct xe_ttm_vram_mgr *mgr) { struct xe_device *xe = tile_to_xe(tile); + struct xe_mem_region *vram = &tile->mem.vram; - mgr->tile = tile; - + mgr->vram = vram; return __xe_ttm_vram_mgr_init(xe, mgr, XE_PL_VRAM0 + tile->id, - tile->mem.vram.usable_size, - tile->mem.vram.io_size, + vram->usable_size, vram->io_size, PAGE_SIZE); } diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h b/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h index 48bb991c14a56..2d75cf1262893 100644 --- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h +++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h @@ -9,7 +9,7 @@ #include #include -struct xe_tile; +struct xe_mem_region; /** * struct xe_ttm_vram_mgr - XE TTM VRAM manager @@ -17,12 +17,12 @@ struct xe_tile; * Manages placement of TTM resource in VRAM. */ struct xe_ttm_vram_mgr { - /** @tile: Tile which the VRAM belongs to */ - struct xe_tile *tile; /** @manager: Base TTM resource manager */ struct ttm_resource_manager manager; /** @mm: DRM buddy allocator which manages the VRAM */ struct drm_buddy mm; + /** @vram: ptr to details of associated VRAM region */ + struct xe_mem_region *vram; /** @visible_size: Proped size of the CPU visible portion */ u64 visible_size; /** @visible_avail: CPU visible portion still unallocated */