[Intel-gfx] [PATCH] drm/i915: don't disable disconnected outputs

Chris Wilson chris at chris-wilson.co.uk
Fri Oct 12 11:02:05 CEST 2012


On Thu, 11 Oct 2012 19:46:27 +0200, Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
> This piece of neat lore has been ported painstakingly and bug-for-bug
> compatible from the old crtc helper code.
> 
> Imo it's utter nonsense.
> 
> If you have disconnect a cable and before you reconnect it, userspace
> (or the kernel) does an set_crtc call, this will result in that
> connector getting disable. Which will result in a nice black screen
> when plugging in the cable again.
> 
> There's absolutely no reason the kernel does such policy changes - if
> userspace tries to set up a mode on something disconnected we might
> fail loudly (since the dp link training fails), but silently adjusting
> the output configuration behind userspace's back is a recipe for
> disaster. Specifically I think that this could explain some of our
> MI_WAIT hangs around suspend, where userspace issues a scanline wait
> on a disable pipe. This mechanisims here could explain how that pipe
> got disabled without userspace noticing.

Indeed, it might just explain all those funky disables on other crtc
after a setcrtc.

Won't a side effect of this be that the system continues to power a
disconnected output if userspace is asleep and fails to notice the
disconnect?
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre



More information about the Intel-gfx mailing list