[PATCH v3 3/3] drm/xe: Don't support execlists in xe_gt_tlb_invalidation layer
Rodrigo Vivi
rodrigo.vivi at intel.com
Fri Feb 23 14:16:04 UTC 2024
On Thu, Feb 22, 2024 at 03:20:21PM -0800, Matthew Brost wrote:
> The xe_gt_tlb_invalidation layer implements TLB invalidations for a GuC
> backend. Simply return if in execlists mode. A follow up may properly
> implement the xe_gt_tlb_invalidation layer for both GuC and execlists.
>
> Fixes: a9351846d945 ("drm/xe: Break of TLB invalidation into its own file")
> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> Signed-off-by: Matthew Brost <matthew.brost at intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
> ---
> drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c b/drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c
> index 48bf5fdb0fbe..71ab03956670 100644
> --- a/drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c
> +++ b/drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c
> @@ -286,6 +286,14 @@ int xe_gt_tlb_invalidation_vma(struct xe_gt *gt,
>
> xe_gt_assert(gt, vma);
>
> + /* Execlists not supported */
> + if (gt_to_xe(gt)->info.force_execlist) {
> + if (fence)
> + __invalidation_fence_signal(fence);
> +
> + return 0;
> + }
> +
> action[len++] = XE_GUC_ACTION_TLB_INVALIDATION;
> action[len++] = 0; /* seqno, replaced in send_tlb_invalidation */
> if (!xe->info.has_range_tlb_invalidation) {
> @@ -354,6 +362,10 @@ int xe_gt_tlb_invalidation_wait(struct xe_gt *gt, int seqno)
> struct xe_guc *guc = >->uc.guc;
> int ret;
>
> + /* Execlists not supported */
> + if (gt_to_xe(gt)->info.force_execlist)
> + return 0;
> +
> /*
> * XXX: See above, this algorithm only works if seqno are always in
> * order
> --
> 2.34.1
>
More information about the Intel-xe
mailing list