|
@@ -53,6 +53,7 @@ static bool intel_pipe_update_start(struct intel_crtc *crtc, uint32_t *start_vbl
|
|
|
enum pipe pipe = crtc->pipe;
|
|
|
long timeout = msecs_to_jiffies_timeout(1);
|
|
|
int scanline, min, max, vblank_start;
|
|
|
+ wait_queue_head_t *wq = drm_crtc_vblank_waitqueue(&crtc->base);
|
|
|
DEFINE_WAIT(wait);
|
|
|
|
|
|
WARN_ON(!drm_modeset_is_locked(&crtc->base.mutex));
|
|
@@ -81,7 +82,7 @@ static bool intel_pipe_update_start(struct intel_crtc *crtc, uint32_t *start_vbl
|
|
|
* other CPUs can see the task state update by the time we
|
|
|
* read the scanline.
|
|
|
*/
|
|
|
- prepare_to_wait(&crtc->vbl_wait, &wait, TASK_UNINTERRUPTIBLE);
|
|
|
+ prepare_to_wait(wq, &wait, TASK_UNINTERRUPTIBLE);
|
|
|
|
|
|
scanline = intel_get_crtc_scanline(crtc);
|
|
|
if (scanline < min || scanline > max)
|
|
@@ -100,7 +101,7 @@ static bool intel_pipe_update_start(struct intel_crtc *crtc, uint32_t *start_vbl
|
|
|
local_irq_disable();
|
|
|
}
|
|
|
|
|
|
- finish_wait(&crtc->vbl_wait, &wait);
|
|
|
+ finish_wait(wq, &wait);
|
|
|
|
|
|
drm_vblank_put(dev, pipe);
|
|
|
|