On Tue, 10 Apr 2012 11:58:04 -0700 Jesse Barnes <jbar...@virtuousgeek.org> wrote:
> If these regs don't have valid values, the panel won't come up, and may > even cause a system hang. So do a basic sanity check when an eDP panel > is detected. > > Signed-off-by: Jesse Barnes <jbar...@virtuousgeek.org> > --- > drivers/gpu/drm/i915/intel_dp.c | 7 +++++++ > 1 files changed, 7 insertions(+), 0 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c > index 110552f..6346b29 100644 > --- a/drivers/gpu/drm/i915/intel_dp.c > +++ b/drivers/gpu/drm/i915/intel_dp.c > @@ -2462,6 +2462,13 @@ intel_dp_init(struct drm_device *dev, int output_reg) > pp_off = I915_READ(PCH_PP_OFF_DELAYS); > pp_div = I915_READ(PCH_PP_DIVISOR); > > + if (!pp_on || !pp_off || !pp_div) { > + DRM_INFO("bad panel power sequencing delays, disabling > panel\n"); > + intel_dp_encoder_destroy(&intel_dp->base.base); > + intel_dp_destroy(&intel_connector->base); > + return; > + } > + > /* Pull timing values out of registers */ > cur.t1_t3 = (pp_on & PANEL_POWER_UP_DELAY_MASK) >> > PANEL_POWER_UP_DELAY_SHIFT; Forgot to add, this one references https://bugs.freedesktop.org/show_bug.cgi?id=44305 so if it looks ok, please add that to the commit message. Thanks, -- Jesse Barnes, Intel Open Source Technology Center
signature.asc
Description: PGP signature
_______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx