aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
diff options
context:
space:
mode:
authorJunwei Zhang <Jerry.Zhang@amd.com>2018-06-25 00:51:14 -0400
committerAlex Deucher <alexander.deucher@amd.com>2018-07-10 15:15:39 -0400
commit7b7c6c81b3a370b46b0c48f4ab7ac3be83237a12 (patch)
treedd93e3098cbcce0051433e3a173c466dd241ddbf /drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
parentb861686b18538eaaf3530255eb37b4133146fbe2 (diff)
drm/amdgpu: separate gpu address from bo pin
It could be got by amdgpu_bo_gpu_offset() if need Signed-off-by: Junwei Zhang <Jerry.Zhang@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_display.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_display.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
index 76ee8e04ff11..a80407cf099b 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
@@ -157,7 +157,6 @@ int amdgpu_display_crtc_page_flip_target(struct drm_crtc *crtc,
157 struct amdgpu_bo *new_abo; 157 struct amdgpu_bo *new_abo;
158 unsigned long flags; 158 unsigned long flags;
159 u64 tiling_flags; 159 u64 tiling_flags;
160 u64 base;
161 int i, r; 160 int i, r;
162 161
163 work = kzalloc(sizeof *work, GFP_KERNEL); 162 work = kzalloc(sizeof *work, GFP_KERNEL);
@@ -189,7 +188,7 @@ int amdgpu_display_crtc_page_flip_target(struct drm_crtc *crtc,
189 goto cleanup; 188 goto cleanup;
190 } 189 }
191 190
192 r = amdgpu_bo_pin(new_abo, amdgpu_display_supported_domains(adev), &base); 191 r = amdgpu_bo_pin(new_abo, amdgpu_display_supported_domains(adev));
193 if (unlikely(r != 0)) { 192 if (unlikely(r != 0)) {
194 DRM_ERROR("failed to pin new abo buffer before flip\n"); 193 DRM_ERROR("failed to pin new abo buffer before flip\n");
195 goto unreserve; 194 goto unreserve;
@@ -206,7 +205,7 @@ int amdgpu_display_crtc_page_flip_target(struct drm_crtc *crtc,
206 amdgpu_bo_get_tiling_flags(new_abo, &tiling_flags); 205 amdgpu_bo_get_tiling_flags(new_abo, &tiling_flags);
207 amdgpu_bo_unreserve(new_abo); 206 amdgpu_bo_unreserve(new_abo);
208 207
209 work->base = base; 208 work->base = amdgpu_bo_gpu_offset(new_abo);
210 work->target_vblank = target - (uint32_t)drm_crtc_vblank_count(crtc) + 209 work->target_vblank = target - (uint32_t)drm_crtc_vblank_count(crtc) +
211 amdgpu_get_vblank_counter_kms(dev, work->crtc_id); 210 amdgpu_get_vblank_counter_kms(dev, work->crtc_id);
212 211