[Intel-gfx] [PATCH 04/11] drm/i915/gtt: Markup i915_ppgtt depth

Mika Kuoppala mika.kuoppala at linux.intel.com
Wed Jul 10 08:17:27 UTC 2019


Chris Wilson <chris at chris-wilson.co.uk> writes:

> This will be useful to consolidate recursive code.
>
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> ---
>  drivers/gpu/drm/i915/i915_gem_gtt.c | 3 +++
>  drivers/gpu/drm/i915/i915_gem_gtt.h | 1 +
>  2 files changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
> index da4db76ce054..2fc60e8acd9a 100644
> --- a/drivers/gpu/drm/i915/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
> @@ -1537,6 +1537,8 @@ static void ppgtt_init(struct i915_ppgtt *ppgtt, struct intel_gt *gt)
>  	ppgtt->vm.vma_ops.unbind_vma  = ppgtt_unbind_vma;
>  	ppgtt->vm.vma_ops.set_pages   = ppgtt_set_pages;
>  	ppgtt->vm.vma_ops.clear_pages = clear_pages;
> +
> +	ppgtt->vm.top = i915_vm_is_4lvl(&ppgtt->vm) ? 3 : 2;

Perhaps it becomes evident later in the series why top and
not level, so these would be 4 and 3 here.

-Mika

>  }
>  
>  static void init_pd_n(struct i915_address_space *vm,
> @@ -2086,6 +2088,7 @@ static struct i915_ppgtt *gen6_ppgtt_create(struct drm_i915_private *i915)
>  		return ERR_PTR(-ENOMEM);
>  
>  	ppgtt_init(&ppgtt->base, &i915->gt);
> +	ppgtt->base.vm.top = 1;
>  
>  	ppgtt->base.vm.allocate_va_range = gen6_alloc_va_range;
>  	ppgtt->base.vm.clear_range = gen6_ppgtt_clear_range;
> diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.h b/drivers/gpu/drm/i915/i915_gem_gtt.h
> index 48bb8c5125e3..119b6d33b266 100644
> --- a/drivers/gpu/drm/i915/i915_gem_gtt.h
> +++ b/drivers/gpu/drm/i915/i915_gem_gtt.h
> @@ -323,6 +323,7 @@ struct i915_address_space {
>  	struct i915_page_dma scratch_pt;
>  	struct i915_page_dma scratch_pd;
>  	struct i915_page_dma scratch_pdp; /* GEN8+ & 48b PPGTT */
> +	int top;
>  
>  	/**
>  	 * List of vma currently bound.
> -- 
> 2.20.1


More information about the Intel-gfx mailing list