[Intel-gfx] [PATCH] drm/i915: wait for a vblank to pass after tv detect

Daniel Vetter daniel at ffwll.ch
Wed May 23 10:17:40 CEST 2012


On Tue, May 22, 2012 at 08:46:06PM +0100, Chris Wilson wrote:
> On Tue, 22 May 2012 21:41:25 +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.
> > 
> > v2: As suggested by Chris Wilson, add a small comment to ensure that
> > no one accidentally removes this vblank wait again - there really
> > seems to be no sane explanation for why we need it, but it is
> > required.
> > 
> > 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
> Cc: stable at vger.kernel.org
> > Signed-Off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
> Acked-by: Chris Wilson <chris at chris-wilson.co.uk>
I've picked this one up for -fixes, thanks for the comments.
-Daniel
-- 
Daniel Vetter
Mail: daniel at ffwll.ch
Mobile: +41 (0)79 365 57 48



More information about the Intel-gfx mailing list