On 20.08.25 13:32, Srinivasan Shanmugam wrote: > Introduce a kernel-internal TTM placement type AMDGPU_PL_MMIO_REMAP > for the HDP flush MMIO remap page > > Plumbing added: > - amdgpu_res_cursor.{first,next}: treat MMIO_REMAP like DOORBELL > - amdgpu_ttm_io_mem_reserve(): return BAR bus address + offset > for MMIO_REMAP, mark as uncached I/O > - amdgpu_ttm_io_mem_pfn(): PFN from register BAR > - amdgpu_res_cpu_visible(): visible to CPU > - amdgpu_evict_flags()/amdgpu_bo_move(): non-migratable > - amdgpu_ttm_tt_pde_flags(): map as SYSTEM > - amdgpu_bo_mem_stats_placement(): report AMDGPU_PL_MMIO_REMAP > - amdgpu_fdinfo: print “mmioremap” bucket label > > Notes: > - This patch bumps __AMDGPU_PL_NUM and (for now) TTM_NUM_MEM_TYPES to > avoid compile-time guards. > > Cc: Christian König <christian.koe...@amd.com> > Cc: Alex Deucher <alexander.deuc...@amd.com> > Signed-off-by: Srinivasan Shanmugam <srinivasan.shanmu...@amd.com> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h | 3 ++- > include/drm/ttm/ttm_resource.h | 2 +- > 2 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h > b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h > index 2309df3f68a9..bb17987f0447 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h > @@ -34,7 +34,8 @@ > #define AMDGPU_PL_OA (TTM_PL_PRIV + 2) > #define AMDGPU_PL_PREEMPT (TTM_PL_PRIV + 3) > #define AMDGPU_PL_DOORBELL (TTM_PL_PRIV + 4) > -#define __AMDGPU_PL_NUM (TTM_PL_PRIV + 5) > +#define AMDGPU_PL_MMIO_REMAP (TTM_PL_PRIV + 5) > +#define __AMDGPU_PL_NUM (TTM_PL_PRIV + 6) > > #define AMDGPU_GTT_MAX_TRANSFER_SIZE 512 > #define AMDGPU_GTT_NUM_TRANSFER_WINDOWS 2 > diff --git a/include/drm/ttm/ttm_resource.h b/include/drm/ttm/ttm_resource.h > index e52bba15012f..f49daa504c36 100644 > --- a/include/drm/ttm/ttm_resource.h > +++ b/include/drm/ttm/ttm_resource.h > @@ -36,7 +36,7 @@ > #include <drm/ttm/ttm_kmap_iter.h> > > #define TTM_MAX_BO_PRIORITY 4U > -#define TTM_NUM_MEM_TYPES 8 > +#define TTM_NUM_MEM_TYPES 9
Please make that a separate patch. Thanks, Christian > > struct dmem_cgroup_device; > struct ttm_device;