diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2014-06-09 21:21:57 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2014-06-09 22:09:12 -0400 |
commit | 685d54b330d0f15c4f6c7bdf51e009aab0d6a750 (patch) | |
tree | a55c5361e08478c9d395b170faf86a96f7ab2d8c | |
parent | 8a309113d50290aef2e0292d3a453425b488d973 (diff) |
drm/radeon: Move fb update from radeon_flip_work_func to radeon_crtc_page_flip
Fixes WARN()s from the DRM core since the page flip rework.
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=77521
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_display.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c index a4e725c6b8c8..5ed617056b9c 100644 --- a/drivers/gpu/drm/radeon/radeon_display.c +++ b/drivers/gpu/drm/radeon/radeon_display.c | |||
@@ -462,9 +462,6 @@ static void radeon_flip_work_func(struct work_struct *__work) | |||
462 | /* We borrow the event spin lock for protecting flip_work */ | 462 | /* We borrow the event spin lock for protecting flip_work */ |
463 | spin_lock_irqsave(&crtc->dev->event_lock, flags); | 463 | spin_lock_irqsave(&crtc->dev->event_lock, flags); |
464 | 464 | ||
465 | /* update crtc fb */ | ||
466 | crtc->primary->fb = fb; | ||
467 | |||
468 | /* set the proper interrupt */ | 465 | /* set the proper interrupt */ |
469 | radeon_irq_kms_pflip_irq_get(rdev, radeon_crtc->crtc_id); | 466 | radeon_irq_kms_pflip_irq_get(rdev, radeon_crtc->crtc_id); |
470 | 467 | ||
@@ -539,6 +536,9 @@ static int radeon_crtc_page_flip(struct drm_crtc *crtc, | |||
539 | } | 536 | } |
540 | radeon_crtc->flip_work = work; | 537 | radeon_crtc->flip_work = work; |
541 | 538 | ||
539 | /* update crtc fb */ | ||
540 | crtc->primary->fb = fb; | ||
541 | |||
542 | spin_unlock_irqrestore(&crtc->dev->event_lock, flags); | 542 | spin_unlock_irqrestore(&crtc->dev->event_lock, flags); |
543 | 543 | ||
544 | queue_work(radeon_crtc->flip_queue, &work->flip_work); | 544 | queue_work(radeon_crtc->flip_queue, &work->flip_work); |