On Tue, 2025-11-04 at 14:33 +0100, Christian König wrote:
> On 11/3/25 23:23, Timur Kristóf wrote:
> > Use the GART helper function introduced in the previous commit
> > to map the VRAM pages of the transfer window to GART.
> > No functional changes, just code cleanup.
> >
> > Split this into a separate commit to make it easier to bisect,
> > in case there are problems in the future.
> >
> > Signed-off-by: Timur Kristóf <[email protected]>
>
> Reviewed-by: Christian König <[email protected]>
>
> Could also be squashed into commit #4. Otherwise commit #5 just adds
> unused functionality.
>
> But not a must have from my side.
>
> Regards,
> Christian.
I prefer to keep the two commits separate to make it easier to bisect
and troubleshoot. In case there are any problems with it, commit #5 can
be reverted without regressing the VCE1 functionality.
Thanks,
Timur
>
> > ---
> > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 12 ++----------
> > 1 file changed, 2 insertions(+), 10 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> > b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> > index e226c3aff7d7..84f9d5a57d03 100644
> > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> > @@ -188,7 +188,6 @@ static int amdgpu_ttm_map_buffer(struct
> > ttm_buffer_object *bo,
> > struct amdgpu_job *job;
> > void *cpu_addr;
> > uint64_t flags;
> > - unsigned int i;
> > int r;
> >
> > BUG_ON(adev->mman.buffer_funcs->copy_max_bytes <
> > @@ -254,16 +253,9 @@ static int amdgpu_ttm_map_buffer(struct
> > ttm_buffer_object *bo,
> > dma_addr = &bo->ttm->dma_address[mm_cur->start >>
> > PAGE_SHIFT];
> > amdgpu_gart_map(adev, 0, num_pages, dma_addr,
> > flags, cpu_addr);
> > } else {
> > - dma_addr_t dma_address;
> > -
> > - dma_address = mm_cur->start;
> > - dma_address += adev->vm_manager.vram_base_offset;
> > + u64 pa = mm_cur->start + adev-
> > >vm_manager.vram_base_offset;
> >
> > - for (i = 0; i < num_pages; ++i) {
> > - amdgpu_gart_map(adev, i << PAGE_SHIFT, 1,
> > &dma_address,
> > - flags, cpu_addr);
> > - dma_address += PAGE_SIZE;
> > - }
> > + amdgpu_gart_map_vram_range(adev, pa, 0, num_pages,
> > flags, cpu_addr);
> > }
> >
> > dma_fence_put(amdgpu_job_submit(job));