[Intel-gfx] [PATCH] drm/i915: only disable memory self-refresh on GMCH
Ville Syrjälä
ville.syrjala at linux.intel.com
Fri Jun 3 12:32:07 UTC 2016
On Thu, May 19, 2016 at 03:50:36PM +0300, David Weinehall wrote:
> 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 at linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_display.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 94d28c795e22..542806056cd9 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -4644,7 +4644,7 @@ static void intel_pre_plane_update(struct intel_crtc_state *old_crtc_state)
> intel_pre_disable_primary(&crtc->base);
> }
>
> - if (pipe_config->disable_cxsr) {
> + if (pipe_config->disable_cxsr && HAS_GMCH_DISPLAY(dev)) {
Might be even better to track the state of cxsr and only wait when it
really changed state. But this looks OK for now.
Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> crtc->wm.cxsr_allowed = false;
>
> /*
> --
> 2.8.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ville Syrjälä
Intel OTC
More information about the Intel-gfx
mailing list