[Intel-gfx] [PATCH v3 14/15] drm/i915: Taking forcewake during GuC load.

Dave Gordon david.s.gordon at intel.com
Tue Apr 28 08:22:23 PDT 2015


On 17/04/15 22:21, yu.dai at intel.com wrote:
> From: Sagar Kamble <sagar.a.kamble at intel.com>
> 
> The firmware loader will use GuC DMA engine to move data from
> ggtt to WOPCM. Need to take forcewake before GuC loading.
> 
> Issue: VIZ-4884
> Change-Id: Ie422fc1e122933b161ff63cab23622197e6bba54
> Signed-off-by: Sagar Kamble <sagar.a.kamble at intel.com>
> ---
>  drivers/gpu/drm/i915/intel_guc_loader.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_guc_loader.c b/drivers/gpu/drm/i915/intel_guc_loader.c
> index d1fd11e..f19eb90 100644
> --- a/drivers/gpu/drm/i915/intel_guc_loader.c
> +++ b/drivers/gpu/drm/i915/intel_guc_loader.c
> @@ -340,6 +340,7 @@ static int guc_load_ucode(struct drm_device *dev)
>  	int ret;
>  
>  	WARN_ON(!mutex_is_locked(&dev->struct_mutex));
> +	intel_uncore_forcewake_get(dev_priv, FORCEWAKE_ALL);
>  
>  	ret = i915_gem_obj_ggtt_pin(guc_fw->uc_fw_obj, 0, 0);
>  	if (ret)
> @@ -388,6 +389,8 @@ out:
>  	if (pinned)
>  		i915_gem_object_ggtt_unpin(guc_fw->uc_fw_obj);
>  
> +	intel_uncore_forcewake_put(dev_priv, FORCEWAKE_ALL);
> +
>  	return ret;
>  }

This doesn't need to be a separate patch; it can be squashed into the
initial creation of the GuC loader, so we don't (even temporarily)  have
a broken version in the codebase.

We keep the authorship, of course :) And maybe turn the commit message
into a code comment in the affected function?

.Dave.


More information about the Intel-gfx mailing list