diff options
| -rw-r--r-- | drivers/gpu/drm/radeon/radeon_display.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c index e38fd559f1ab..eb18bb7af1cc 100644 --- a/drivers/gpu/drm/radeon/radeon_display.c +++ b/drivers/gpu/drm/radeon/radeon_display.c | |||
| @@ -271,8 +271,6 @@ void radeon_crtc_handle_flip(struct radeon_device *rdev, int crtc_id) | |||
| 271 | { | 271 | { |
| 272 | struct radeon_crtc *radeon_crtc = rdev->mode_info.crtcs[crtc_id]; | 272 | struct radeon_crtc *radeon_crtc = rdev->mode_info.crtcs[crtc_id]; |
| 273 | struct radeon_unpin_work *work; | 273 | struct radeon_unpin_work *work; |
| 274 | struct drm_pending_vblank_event *e; | ||
| 275 | struct timeval now; | ||
| 276 | unsigned long flags; | 274 | unsigned long flags; |
| 277 | u32 update_pending; | 275 | u32 update_pending; |
| 278 | int vpos, hpos; | 276 | int vpos, hpos; |
| @@ -328,14 +326,9 @@ void radeon_crtc_handle_flip(struct radeon_device *rdev, int crtc_id) | |||
| 328 | radeon_crtc->unpin_work = NULL; | 326 | radeon_crtc->unpin_work = NULL; |
| 329 | 327 | ||
| 330 | /* wakeup userspace */ | 328 | /* wakeup userspace */ |
| 331 | if (work->event) { | 329 | if (work->event) |
| 332 | e = work->event; | 330 | drm_send_vblank_event(rdev->ddev, crtc_id, work->event); |
| 333 | e->event.sequence = drm_vblank_count_and_time(rdev->ddev, crtc_id, &now); | 331 | |
| 334 | e->event.tv_sec = now.tv_sec; | ||
| 335 | e->event.tv_usec = now.tv_usec; | ||
| 336 | list_add_tail(&e->base.link, &e->base.file_priv->event_list); | ||
| 337 | wake_up_interruptible(&e->base.file_priv->event_wait); | ||
| 338 | } | ||
| 339 | spin_unlock_irqrestore(&rdev->ddev->event_lock, flags); | 332 | spin_unlock_irqrestore(&rdev->ddev->event_lock, flags); |
| 340 | 333 | ||
| 341 | drm_vblank_put(rdev->ddev, radeon_crtc->crtc_id); | 334 | drm_vblank_put(rdev->ddev, radeon_crtc->crtc_id); |
