Skip to content

Commit a782bca

Browse files
Gustavo Padovandanvet
authored andcommitted
drm/radeon: use drm_crtc_vblank_{get,put}()
Replace the legacy drm_vblank_{get,put}() with the new helper functions. Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: http://patchwork.freedesktop.org/patch/msgid/1465224105-21485-13-git-send-email-gustavo@padovan.org
1 parent 078ace6 commit a782bca

File tree

2 files changed

+12
-7
lines changed

2 files changed

+12
-7
lines changed

drivers/gpu/drm/radeon/radeon_display.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -381,7 +381,7 @@ void radeon_crtc_handle_flip(struct radeon_device *rdev, int crtc_id)
381381

382382
spin_unlock_irqrestore(&rdev->ddev->event_lock, flags);
383383

384-
drm_vblank_put(rdev->ddev, radeon_crtc->crtc_id);
384+
drm_crtc_vblank_put(&radeon_crtc->base);
385385
radeon_irq_kms_pflip_irq_put(rdev, work->crtc_id);
386386
queue_work(radeon_crtc->flip_queue, &work->unpin_work);
387387
}
@@ -598,7 +598,7 @@ static int radeon_crtc_page_flip(struct drm_crtc *crtc,
598598
}
599599
work->base = base;
600600

601-
r = drm_vblank_get(crtc->dev, radeon_crtc->crtc_id);
601+
r = drm_crtc_vblank_get(crtc);
602602
if (r) {
603603
DRM_ERROR("failed to get vblank before flip\n");
604604
goto pflip_cleanup;
@@ -625,7 +625,7 @@ static int radeon_crtc_page_flip(struct drm_crtc *crtc,
625625
return 0;
626626

627627
vblank_cleanup:
628-
drm_vblank_put(crtc->dev, radeon_crtc->crtc_id);
628+
drm_crtc_vblank_put(&radeon_crtc->base);
629629

630630
pflip_cleanup:
631631
if (unlikely(radeon_bo_reserve(new_rbo, false) != 0)) {

drivers/gpu/drm/radeon/radeon_pm.c

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -246,6 +246,7 @@ static void radeon_set_power_state(struct radeon_device *rdev)
246246

247247
static void radeon_pm_set_clocks(struct radeon_device *rdev)
248248
{
249+
struct drm_crtc *crtc;
249250
int i, r;
250251

251252
/* no need to take locks, etc. if nothing's going to change */
@@ -274,26 +275,30 @@ static void radeon_pm_set_clocks(struct radeon_device *rdev)
274275
radeon_unmap_vram_bos(rdev);
275276

276277
if (rdev->irq.installed) {
277-
for (i = 0; i < rdev->num_crtc; i++) {
278+
i = 0;
279+
drm_for_each_crtc(crtc, rdev->ddev) {
278280
if (rdev->pm.active_crtcs & (1 << i)) {
279281
/* This can fail if a modeset is in progress */
280-
if (drm_vblank_get(rdev->ddev, i) == 0)
282+
if (drm_crtc_vblank_get(crtc) == 0)
281283
rdev->pm.req_vblank |= (1 << i);
282284
else
283285
DRM_DEBUG_DRIVER("crtc %d no vblank, can glitch\n",
284286
i);
285287
}
288+
i++;
286289
}
287290
}
288291

289292
radeon_set_power_state(rdev);
290293

291294
if (rdev->irq.installed) {
292-
for (i = 0; i < rdev->num_crtc; i++) {
295+
i = 0;
296+
drm_for_each_crtc(crtc, rdev->ddev) {
293297
if (rdev->pm.req_vblank & (1 << i)) {
294298
rdev->pm.req_vblank &= ~(1 << i);
295-
drm_vblank_put(rdev->ddev, i);
299+
drm_crtc_vblank_put(crtc);
296300
}
301+
i++;
297302
}
298303
}
299304

0 commit comments

Comments
 (0)