drm/i915: Cleanup if the EDP transcoder has a bobug input value
authorDamien Lespiau <damien.lespiau@intel.com>
Thu, 7 Mar 2013 15:30:26 +0000 (15:30 +0000)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Sat, 23 Mar 2013 12:27:44 +0000 (13:27 +0100)
commitaaa148ecdc1f416ada73c1c25da0ef67e0210273
treee1cb01ee285de95267b387a39dd273616401fb8a
parent00037c2e95618c8a598ff41e2fc4d34367b0eb91
drm/i915: Cleanup if the EDP transcoder has a bobug input value

In the case where the hardware has been wrongly programmed and the EDP
TRANS_DDI_FUNC_CTL register has a bogus value in its EDP Input field, we
were using the pipe variable uninitialized.

In this case, shutdown the transcoder. It will be programmed correctly
the next time we try to enabled eDP.

Note from Paulo's review: Wrong modeset sequence can easily lead to
frozen machines hence the disable_ddi call might be risky. But since
things are awry already, doesn't matter too much.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
[danvet: Add note about Paulo's caution about potential hangs.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_display.c