drm/i915: only disable memory self-refresh on GMCH
authorDavid Weinehall <david.weinehall@linux.intel.com>
Thu, 19 May 2016 12:50:36 +0000 (15:50 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Tue, 7 Jun 2016 15:55:43 +0000 (18:55 +0300)
commita4015f9a9c3c206b57b22c4ad05b1d68332ffb2e
treed7647a7383ef6b10f69d63045f1d2733d41f4379
parent22f35042593c2b369861f0b9740efb8065a42db0
drm/i915: only disable memory self-refresh on GMCH

The atomic version of intel_pre_plane_update did not check
for HAS_GMCH_DISPLAY before calling intel_set_memory_cxsr().
While this doesn't cause any issues on its own (it will
return without doing anything if the hardware doesn't
have the required feature), the drm_wait_one_vblank() that
is needed if memory self-refresh is disabled introduces
an unnecessary delay in the suspend path.

In cases where i915 is on the critical path it means that
we slow down suspend by 16.8ms on platforms that don't
need to disable memory self-refresh.

Signed-off-by: David Weinehall <david.weinehall@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1463662236-18192-1-git-send-email-david.weinehall@linux.intel.com
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
drivers/gpu/drm/i915/intel_display.c