1 /* SPDX-License-Identifier: MIT */ 2 /* 3 * Copyright © 2023 Intel Corporation 4 */ 5 6 #ifndef _XE_GT_TLB_INVALIDATION_TYPES_H_ 7 #define _XE_GT_TLB_INVALIDATION_TYPES_H_ 8 9 #include <linux/dma-fence.h> 10 11 struct xe_gt; 12 13 /** 14 * struct xe_gt_tlb_invalidation_fence - XE GT TLB invalidation fence 15 * 16 * Optionally passed to xe_gt_tlb_invalidation and will be signaled upon TLB 17 * invalidation completion. 18 */ 19 struct xe_gt_tlb_invalidation_fence { 20 /** @base: dma fence base */ 21 struct dma_fence base; 22 /** @gt: GT which fence belong to */ 23 struct xe_gt *gt; 24 /** @link: link into list of pending tlb fences */ 25 struct list_head link; 26 /** @seqno: seqno of TLB invalidation to signal fence one */ 27 int seqno; 28 /** @invalidation_time: time of TLB invalidation */ 29 ktime_t invalidation_time; 30 }; 31 32 #endif 33