diff options
author | Dave Airlie <airlied@redhat.com> | 2020-08-25 02:08:11 +0300 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2020-08-31 05:42:40 +0300 |
commit | 8e6c0a2fe75d371cbaa1aea71eac636b07f32533 (patch) | |
tree | f3990e29051398af0d5cdb7d233b8eb062a40093 /drivers/gpu | |
parent | 05010c1e2f6b08d623d225305936255d53e34b62 (diff) | |
download | linux-8e6c0a2fe75d371cbaa1aea71eac636b07f32533.tar.xz |
drm/radeon/ttm: don't store driver copy of device pointer.
This can be gotten back from bdev.
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200826014428.828392-3-airlied@gmail.com
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_ttm.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon/radeon_ttm.c index 3a4372ea74b9..74ad50c7491c 100644 --- a/drivers/gpu/drm/radeon/radeon_ttm.c +++ b/drivers/gpu/drm/radeon/radeon_ttm.c @@ -422,7 +422,6 @@ static int radeon_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_reso */ struct radeon_ttm_tt { struct ttm_dma_tt ttm; - struct radeon_device *rdev; u64 offset; uint64_t userptr; @@ -525,6 +524,7 @@ static int radeon_ttm_backend_bind(struct ttm_tt *ttm, struct ttm_resource *bo_mem) { struct radeon_ttm_tt *gtt = (void*)ttm; + struct radeon_device *rdev = radeon_get_rdev(ttm->bdev); uint32_t flags = RADEON_GART_PAGE_VALID | RADEON_GART_PAGE_READ | RADEON_GART_PAGE_WRITE; int r; @@ -541,7 +541,7 @@ static int radeon_ttm_backend_bind(struct ttm_tt *ttm, } if (ttm->caching_state == tt_cached) flags |= RADEON_GART_PAGE_SNOOP; - r = radeon_gart_bind(gtt->rdev, gtt->offset, ttm->num_pages, + r = radeon_gart_bind(rdev, gtt->offset, ttm->num_pages, ttm->pages, gtt->ttm.dma_address, flags); if (r) { DRM_ERROR("failed to bind %lu pages at 0x%08X\n", @@ -554,8 +554,9 @@ static int radeon_ttm_backend_bind(struct ttm_tt *ttm, static void radeon_ttm_backend_unbind(struct ttm_tt *ttm) { struct radeon_ttm_tt *gtt = (void *)ttm; + struct radeon_device *rdev = radeon_get_rdev(ttm->bdev); - radeon_gart_unbind(gtt->rdev, gtt->offset, ttm->num_pages); + radeon_gart_unbind(rdev, gtt->offset, ttm->num_pages); if (gtt->userptr) radeon_ttm_tt_unpin_userptr(ttm); @@ -594,7 +595,6 @@ static struct ttm_tt *radeon_ttm_tt_create(struct ttm_buffer_object *bo, return NULL; } gtt->ttm.ttm.func = &radeon_backend_func; - gtt->rdev = rdev; if (ttm_dma_tt_init(>t->ttm, bo, page_flags)) { kfree(gtt); return NULL; |