aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2016-09-03 10:18:26 -0400
committerAlex Deucher <alexander.deucher@amd.com>2016-09-14 15:10:30 -0400
commit71c76a086f04055e2da8d7d71c77e0b37ac310a2 (patch)
tree298dd7e0dd6670446d429c55ea52dad654d49440 /drivers/gpu
parentd28d6e6fa55e08a16a83ae572b1cbf4f03e8fbf1 (diff)
drm/amdgpu: fix GTT offset handling
Otherwise we run into problems on 32bit systems with more than 4GB GART. Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
index 3beb10b75746..a4914b788517 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
@@ -648,7 +648,7 @@ static int amdgpu_ttm_backend_bind(struct ttm_tt *ttm,
648 return r; 648 return r;
649 } 649 }
650 } 650 }
651 gtt->offset = (unsigned long)(bo_mem->start << PAGE_SHIFT); 651 gtt->offset = (u64)bo_mem->start << PAGE_SHIFT;
652 if (!ttm->num_pages) { 652 if (!ttm->num_pages) {
653 WARN(1, "nothing to bind %lu pages for mreg %p back %p!\n", 653 WARN(1, "nothing to bind %lu pages for mreg %p back %p!\n",
654 ttm->num_pages, bo_mem, ttm); 654 ttm->num_pages, bo_mem, ttm);
@@ -663,8 +663,8 @@ static int amdgpu_ttm_backend_bind(struct ttm_tt *ttm,
663 ttm->pages, gtt->ttm.dma_address, flags); 663 ttm->pages, gtt->ttm.dma_address, flags);
664 664
665 if (r) { 665 if (r) {
666 DRM_ERROR("failed to bind %lu pages at 0x%08X\n", 666 DRM_ERROR("failed to bind %lu pages at 0x%08llX\n",
667 ttm->num_pages, (unsigned)gtt->offset); 667 ttm->num_pages, gtt->offset);
668 return r; 668 return r;
669 } 669 }
670 spin_lock(&gtt->adev->gtt_list_lock); 670 spin_lock(&gtt->adev->gtt_list_lock);
@@ -689,8 +689,8 @@ int amdgpu_ttm_recover_gart(struct amdgpu_device *adev)
689 flags); 689 flags);
690 if (r) { 690 if (r) {
691 spin_unlock(&adev->gtt_list_lock); 691 spin_unlock(&adev->gtt_list_lock);
692 DRM_ERROR("failed to bind %lu pages at 0x%08X\n", 692 DRM_ERROR("failed to bind %lu pages at 0x%08llX\n",
693 gtt->ttm.ttm.num_pages, (unsigned)gtt->offset); 693 gtt->ttm.ttm.num_pages, gtt->offset);
694 return r; 694 return r;
695 } 695 }
696 } 696 }