[Intel-gfx] [PATCH] drm/i915: remove extraneous VGA power domain put calls

Ville Syrjälä ville.syrjala at linux.intel.com
Fri Apr 25 18:14:42 CEST 2014


On Fri, Apr 25, 2014 at 05:28:00PM +0300, Imre Deak wrote:
> In recent dmesg logs reported for unrelated issues I noticed some power
> domain WARNs caused by the following.
> 
> The workaround
> 
> commit ce352550327b394f3072a07c9cd9d27af9276f15
> Author: Ville Syrjälä <ville.syrjala at linux.intel.com>
> Date:   Fri Sep 20 10:14:23 2013 +0300
> 
>     drm/i915: Fix unclaimed register access due to delayed VGA memory disable
> 
> and following fixup of it
> 
> commit a14853206517b0c8102accbc77401805a0dbdb9e
> Author: Ville Syrjälä <ville.syrjala at linux.intel.com>
> Date:   Mon Sep 16 17:38:34 2013 +0300
> 
>     drm/i915: Move power well init earlier during driver load
> 
> was partially reverted by
> 
> commit 7f16e5c1416070dc590dd333a2d677700046a4ab
> Merge: 9d1cb91 5e01dc7
> Author: Daniel Vetter <daniel.vetter at ffwll.ch>
> Date:   Mon Nov 4 16:28:47 2013 +0100
> 
>     Merge tag 'v3.12' into drm-intel-next
> 
> but kept the power domain put calls on the error path.
> 
> I think for now we can keep things as-is (not reintroduce the w/a) and just fix
> the error path, since
> - nobody complained seeing this issue
> - according to Ville someone is reworking the VGA arbitration scheme at the
>   moment and when that's ready we have to rethink this part anyway
> 
> So fix this by just removing the put calls from the error path as well.
> 
> Signed-off-by: Imre Deak <imre.deak at intel.com>

Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>

> ---
>  drivers/gpu/drm/i915/i915_dma.c | 9 +++------
>  1 file changed, 3 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
> index 0b38f88..4a13523 100644
> --- a/drivers/gpu/drm/i915/i915_dma.c
> +++ b/drivers/gpu/drm/i915/i915_dma.c
> @@ -1339,7 +1339,7 @@ static int i915_load_modeset_init(struct drm_device *dev)
>  
>  	ret = i915_gem_init(dev);
>  	if (ret)
> -		goto cleanup_power;
> +		goto cleanup_irq;
>  
>  	INIT_WORK(&dev_priv->console_resume_work, intel_console_resume);
>  
> @@ -1348,10 +1348,8 @@ static int i915_load_modeset_init(struct drm_device *dev)
>  	/* Always safe in the mode setting case. */
>  	/* FIXME: do pre/post-mode set stuff in core KMS code */
>  	dev->vblank_disable_allowed = true;
> -	if (INTEL_INFO(dev)->num_pipes == 0) {
> -		intel_display_power_put(dev_priv, POWER_DOMAIN_VGA);
> +	if (INTEL_INFO(dev)->num_pipes == 0)
>  		return 0;
> -	}
>  
>  	ret = intel_fbdev_init(dev);
>  	if (ret)
> @@ -1386,8 +1384,7 @@ cleanup_gem:
>  	mutex_unlock(&dev->struct_mutex);
>  	WARN_ON(dev_priv->mm.aliasing_ppgtt);
>  	drm_mm_takedown(&dev_priv->gtt.base.mm);
> -cleanup_power:
> -	intel_display_power_put(dev_priv, POWER_DOMAIN_VGA);
> +cleanup_irq:
>  	drm_irq_uninstall(dev);
>  cleanup_gem_stolen:
>  	i915_gem_cleanup_stolen(dev);
> -- 
> 1.8.4
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC



More information about the Intel-gfx mailing list