sna: Clear DPMS tracking on VT switch

Assume the worst and force us to reset the property when we restore
control.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
Chris Wilson 2014-02-13 12:57:50 +00:00
parent 135da29410
commit 83d17cded8
1 changed files with 5 additions and 3 deletions

View File

@ -1191,6 +1191,8 @@ sna_crtc_disable(xf86CrtcPtr crtc)
kgem_bo_destroy(&sna->kgem, sna_crtc->bo);
sna_crtc->bo = NULL;
}
assert(sna_crtc->dpms_mode == DPMSModeOff);
}
static void update_flush_interval(struct sna *sna)
@ -2117,7 +2119,7 @@ sna_crtc_init(ScrnInfoPtr scrn, struct sna_mode *mode, int num)
return false;
sna_crtc->id = mode->kmode->crtcs[num];
sna_crtc->dpms_mode = DPMSModeOff;
sna_crtc->dpms_mode = -1;
VG_CLEAR(get_pipe);
get_pipe.pipe = 0;
@ -4355,7 +4357,7 @@ void sna_mode_reset(struct sna *sna)
if (sna_crtc == NULL)
continue;
sna_crtc->dpms_mode = DPMSModeOff;
sna_crtc->dpms_mode = -1;
/* Force the rotation property to be reset on next use */
rotation_reset(&sna_crtc->primary_rotation);
@ -4367,7 +4369,7 @@ void sna_mode_reset(struct sna *sna)
if (sna_output == NULL)
continue;
sna_output->dpms_mode = DPMSModeOff;
sna_output->dpms_mode = -1;
}
}