On Tue, Feb 19, 2013 at 12:11:41PM -0800, Jesse Barnes wrote: > With the other bits in place, we can do this safely. > > v2: disable backlight on suspend to prevent premature enablement on resume > > Signed-off-by: Jesse Barnes <jbarnes at virtuousgeek.org> > --- > drivers/gpu/drm/i915/i915_drv.c | 12 +++++++++--- > drivers/gpu/drm/i915/intel_fb.c | 3 +++ > 2 files changed, 12 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c > index c5b8c81..e76b038 100644 > --- a/drivers/gpu/drm/i915/i915_drv.c > +++ b/drivers/gpu/drm/i915/i915_drv.c > @@ -492,9 +492,10 @@ static int i915_drm_freeze(struct drm_device *dev) > > cancel_delayed_work_sync(&dev_priv->rps.delayed_resume_work); > > - intel_modeset_disable(dev); As discussed in person last week, simply dropping this will probably kill S0i3 support. -Daniel > - > drm_irq_uninstall(dev); > + > + if (dev_priv->backlight) > + intel_panel_disable_backlight(dev); > } > > i915_save_state(dev); > @@ -569,9 +570,14 @@ static int __i915_drm_thaw(struct drm_device *dev) > mutex_unlock(&dev->struct_mutex); > > intel_modeset_init_hw(dev); > - intel_modeset_setup_hw_state(dev, false); > + > drm_irq_install(dev); > intel_hpd_init(dev); > + > + /* Resume the modeset for every activated CRTC */ > + drm_modeset_lock_all(dev); > + intel_modeset_setup_hw_state(dev, true); > + drm_modeset_unlock_all(dev); > } > > intel_opregion_init(dev); > diff --git a/drivers/gpu/drm/i915/intel_fb.c b/drivers/gpu/drm/i915/intel_fb.c > index 1c510da..987bc33 100644 > --- a/drivers/gpu/drm/i915/intel_fb.c > +++ b/drivers/gpu/drm/i915/intel_fb.c > @@ -149,6 +149,9 @@ static int intelfb_create(struct intel_fbdev *ifbdev, > } > info->screen_size = size; > > + /* This driver doesn't need a VT switch to restore the mode on resume */ > + info->skip_vt_switch = true; > + > // memset(info->screen_base, 0, size); > > drm_fb_helper_fill_fix(info, fb->pitches[0], fb->depth); > -- > 1.7.9.5 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx at lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch