On Thu, Jan 6, 2011 at 18:49, Chris Wilson <chris at chris-wilson.co.uk> wrote: > > My fear is that some machines have a dependency between the backlight > and panel power status. The patch in question changed the timing between > turning on the panel and adjusting the backlight which would be restore > with: > > diff --git a/drivers/gpu/drm/i915/intel_lvds.c > b/drivers/gpu/drm/i915/intel_lvds.c > index aa23070..0b40b4f 100644 > --- a/drivers/gpu/drm/i915/intel_lvds.c > +++ b/drivers/gpu/drm/i915/intel_lvds.c > @@ -106,6 +106,12 @@ static void intel_lvds_enable(struct intel_lvds > *intel_lvds) > ? ? ? ?I915_WRITE(ctl_reg, I915_READ(ctl_reg) | POWER_TARGET_ON); > ? ? ? ?POSTING_READ(lvds_reg); > > + ? ? ? { > + ? ? ? ? ? ? ? u32 reg = HAS_PCH_SPLIT(dev) ? PCH_PP_STATUS : PPS_STATUS; > + ? ? ? ? ? ? ? if (wait_for(I915_READ(reg) & PP_ON, 1000)) > + ? ? ? ? ? ? ? ? ? ? ? DRM_ERROR("timed out waiting for panel to power > up\n"); > + ? ? ? } > + > ? ? ? ?intel_panel_set_backlight(dev, dev_priv->backlight_level); > ?}
FWIW it does not compile: CC drivers/gpu/drm/i915/intel_lvds.o drivers/gpu/drm/i915/intel_lvds.c: In function ?intel_lvds_enable?: drivers/gpu/drm/i915/intel_lvds.c:110: error: ?PPS_STATUS? undeclared (first use in this function) drivers/gpu/drm/i915/intel_lvds.c:110: error: (Each undeclared identifier is reported only once drivers/gpu/drm/i915/intel_lvds.c:110: error: for each function it appears in.) make[4]: *** [drivers/gpu/drm/i915/intel_lvds.o] Error 1