On Tue, 22 May 2012 21:25:08 +0200, Daniel Vetter <daniel.vetter at ffwll.ch> wrote: > Otherwise the hw will get confused and result in a black screen. > > This regression has been most likely introduce in > > commit 974b93315b2213b74a42a87e8a9d4fc8c0dbe90c > Author: Chris Wilson <chris at chris-wilson.co.uk> > Date: Sun Sep 5 00:44:20 2010 +0100 > > drm/i915/tv: Poll for DAC state change > > That commit replace the first msleep(20) with a busy-loop, but failed > to keep the 2nd msleep around. Later on we've replaced all these > msleep(20) by proper vblanks. > > For reference also see the commit in xf86-video-intel: > > commit 1142be53eb8d2ee8a9b60ace5d49f0ba27332275 > Author: Jesse Barnes <jbarnes at hobbes.lan> > Date: Mon Jun 9 08:52:59 2008 -0700 > > Fix TV programming: add vblank wait after TV_CTL writes > > Fxies FDO bug #14000; we need to wait for vblank after > writing TV_CTL or following "DPMS on" calls may not actually enable the output. > > Launchpad: https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/763688 > Reported-and-Tested-by: Robert Lowery <rglowery at exemail.com.au> > Cc: Rodrigo Vivi <rodrigo.vivi at gmail.com> > Cc: stable at kernel.org > Signed-Off-by: Daniel Vetter <daniel.vetter at ffwll.ch> Still lacking an accurate explanation for why the wait is required, both in the changelog and code. Especially the code. -Chris -- Chris Wilson, Intel Open Source Technology Centre