Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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

authored by

Gustavo Padovan and committed by
Daniel Vetter
a782bca5 078ace6f

+12 -7
+3 -3
drivers/gpu/drm/radeon/radeon_display.c
··· 381 381 382 382 spin_unlock_irqrestore(&rdev->ddev->event_lock, flags); 383 383 384 - drm_vblank_put(rdev->ddev, radeon_crtc->crtc_id); 384 + drm_crtc_vblank_put(&radeon_crtc->base); 385 385 radeon_irq_kms_pflip_irq_put(rdev, work->crtc_id); 386 386 queue_work(radeon_crtc->flip_queue, &work->unpin_work); 387 387 } ··· 598 598 } 599 599 work->base = base; 600 600 601 - r = drm_vblank_get(crtc->dev, radeon_crtc->crtc_id); 601 + r = drm_crtc_vblank_get(crtc); 602 602 if (r) { 603 603 DRM_ERROR("failed to get vblank before flip\n"); 604 604 goto pflip_cleanup; ··· 625 625 return 0; 626 626 627 627 vblank_cleanup: 628 - drm_vblank_put(crtc->dev, radeon_crtc->crtc_id); 628 + drm_crtc_vblank_put(&radeon_crtc->base); 629 629 630 630 pflip_cleanup: 631 631 if (unlikely(radeon_bo_reserve(new_rbo, false) != 0)) {
+9 -4
drivers/gpu/drm/radeon/radeon_pm.c
··· 246 246 247 247 static void radeon_pm_set_clocks(struct radeon_device *rdev) 248 248 { 249 + struct drm_crtc *crtc; 249 250 int i, r; 250 251 251 252 /* no need to take locks, etc. if nothing's going to change */ ··· 275 274 radeon_unmap_vram_bos(rdev); 276 275 277 276 if (rdev->irq.installed) { 278 - for (i = 0; i < rdev->num_crtc; i++) { 277 + i = 0; 278 + drm_for_each_crtc(crtc, rdev->ddev) { 279 279 if (rdev->pm.active_crtcs & (1 << i)) { 280 280 /* This can fail if a modeset is in progress */ 281 - if (drm_vblank_get(rdev->ddev, i) == 0) 281 + if (drm_crtc_vblank_get(crtc) == 0) 282 282 rdev->pm.req_vblank |= (1 << i); 283 283 else 284 284 DRM_DEBUG_DRIVER("crtc %d no vblank, can glitch\n", 285 285 i); 286 286 } 287 + i++; 287 288 } 288 289 } 289 290 290 291 radeon_set_power_state(rdev); 291 292 292 293 if (rdev->irq.installed) { 293 - for (i = 0; i < rdev->num_crtc; i++) { 294 + i = 0; 295 + drm_for_each_crtc(crtc, rdev->ddev) { 294 296 if (rdev->pm.req_vblank & (1 << i)) { 295 297 rdev->pm.req_vblank &= ~(1 << i); 296 - drm_vblank_put(rdev->ddev, i); 298 + drm_crtc_vblank_put(crtc); 297 299 } 300 + i++; 298 301 } 299 302 } 300 303