[PATCH v15 1/5] drm/i915: Factor out setup_private_pat()

Chris Wilson chris at chris-wilson.co.uk
Tue Sep 12 10:00:00 UTC 2017


Quoting Zhi Wang (2017-09-12 08:42:24)
> Factor out setup_private_pat() for introducing the following patches.
> 
> Signed-off-by: Zhi Wang <zhi.a.wang at intel.com>
> Cc: Ben Widawsky <benjamin.widawsky at intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
> Reviewed-by: Ben Widawsky <benjamin.widawsky at intel.com>
> ---
>  drivers/gpu/drm/i915/i915_gem_gtt.c | 20 ++++++++++++--------
>  1 file changed, 12 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
> index c33c2f9..2fc0656 100644
> --- a/drivers/gpu/drm/i915/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
> @@ -2915,6 +2915,16 @@ static void gen6_gmch_remove(struct i915_address_space *vm)
>         cleanup_scratch_page(vm);
>  }
>  
> +static void setup_private_pat(struct drm_i915_private *dev_priv)
> +{
> +       if (INTEL_GEN(dev_priv) >= 10)
> +               cnl_setup_private_ppat(dev_priv);
> +       else if (IS_CHERRYVIEW(dev_priv) || IS_GEN9_LP(dev_priv))
> +               chv_setup_private_ppat(dev_priv);
> +       else
> +               bdw_setup_private_ppat(dev_priv);
> +}
> +
>  static int gen8_gmch_probe(struct i915_ggtt *ggtt)
>  {
>         struct drm_i915_private *dev_priv = ggtt->base.i915;
> @@ -2947,14 +2957,6 @@ static int gen8_gmch_probe(struct i915_ggtt *ggtt)
>         }
>  
>         ggtt->base.total = (size / sizeof(gen8_pte_t)) << PAGE_SHIFT;
> -
> -       if (INTEL_GEN(dev_priv) >= 10)
> -               cnl_setup_private_ppat(dev_priv);
> -       else if (IS_CHERRYVIEW(dev_priv) || IS_GEN9_LP(dev_priv))
> -               chv_setup_private_ppat(dev_priv);
> -       else
> -               bdw_setup_private_ppat(dev_priv);
> -
>         ggtt->base.cleanup = gen6_gmch_remove;
>         ggtt->base.bind_vma = ggtt_bind_vma;
>         ggtt->base.unbind_vma = ggtt_unbind_vma;
> @@ -2975,6 +2977,8 @@ static int gen8_gmch_probe(struct i915_ggtt *ggtt)
>  
>         ggtt->invalidate = gen6_ggtt_invalidate;
>  
> +       setup_private_pat(dev_priv);
> +

I've pushed this patch so you don't have to keep sending it with every
revision ;)

Looking at it, we should move setup_private_pat() out of gmch_probe, but
it should be a separate step as here we do want to keep the patch
mechanically simple.
-Chris


More information about the intel-gvt-dev mailing list