On Fri, Aug 05, 2016 at 11:28:30PM +0300, ville.syrjala@xxxxxxxxxxxxxxx wrote: > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > We don't have GPU reset support for gen2, which means the display > hardware is unaffected when a GPU hang is handled. However as the ring > has in fact stopped, any flips still in the ring will never complete, > and thus the display base address updates will never happen. So we > really need to fix that up manually just like we do on g4x+. > > In fact, let's just use intel_has_gpu_reset() instead of IS_GEN2() > since that'll also handle cases where someone would disable the GPU > reset support on gen3/4 for whatever reason. > > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx> > --- > drivers/gpu/drm/i915/intel_display.c | 11 ++--------- > 1 file changed, 2 insertions(+), 9 deletions(-) > > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index 632739f9cc44..74375ec651e5 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -3137,7 +3137,8 @@ __intel_display_resume(struct drm_device *dev, > > static bool gpu_reset_clobbers_display(struct drm_i915_private *dev_priv) > { > - return INTEL_GEN(dev_priv) < 5 && !IS_G4X(dev_priv); > + return intel_has_gpu_reset(dev_priv) && > + INTEL_GEN(dev_priv) < 5 && !IS_G4X(dev_priv); > } > > void intel_prepare_reset(struct drm_i915_private *dev_priv) > @@ -3147,10 +3148,6 @@ void intel_prepare_reset(struct drm_i915_private *dev_priv) > struct drm_atomic_state *state; > int ret; > > - /* no reset support for gen2 */ > - if (IS_GEN2(dev_priv)) > - return; > - > /* > * Need mode_config.mutex so that we don't > * trample ongoing ->detect() and whatnot. > @@ -3210,10 +3207,6 @@ void intel_finish_reset(struct drm_i915_private *dev_priv) > */ > intel_complete_page_flips(dev_priv); > > - /* no reset support for gen2 */ > - if (IS_GEN2(dev_priv)) > - return; > - > dev_priv->modeset_restore_state = NULL; > > /* reset doesn't touch the display */ > -- > 2.7.4 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx