Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v6.13 40 lines 1.2 kB view raw
1/* SPDX-License-Identifier: MIT */ 2/* 3 * Copyright © 2023 Intel Corporation 4 */ 5 6#ifndef _XE_GT_TLB_INVALIDATION_H_ 7#define _XE_GT_TLB_INVALIDATION_H_ 8 9#include <linux/types.h> 10 11#include "xe_gt_tlb_invalidation_types.h" 12 13struct xe_gt; 14struct xe_guc; 15struct xe_vma; 16 17int xe_gt_tlb_invalidation_init_early(struct xe_gt *gt); 18 19void xe_gt_tlb_invalidation_reset(struct xe_gt *gt); 20int xe_gt_tlb_invalidation_ggtt(struct xe_gt *gt); 21int xe_gt_tlb_invalidation_vma(struct xe_gt *gt, 22 struct xe_gt_tlb_invalidation_fence *fence, 23 struct xe_vma *vma); 24int xe_gt_tlb_invalidation_range(struct xe_gt *gt, 25 struct xe_gt_tlb_invalidation_fence *fence, 26 u64 start, u64 end, u32 asid); 27int xe_guc_tlb_invalidation_done_handler(struct xe_guc *guc, u32 *msg, u32 len); 28 29void xe_gt_tlb_invalidation_fence_init(struct xe_gt *gt, 30 struct xe_gt_tlb_invalidation_fence *fence, 31 bool stack); 32void xe_gt_tlb_invalidation_fence_signal(struct xe_gt_tlb_invalidation_fence *fence); 33 34static inline void 35xe_gt_tlb_invalidation_fence_wait(struct xe_gt_tlb_invalidation_fence *fence) 36{ 37 dma_fence_wait(&fence->base, false); 38} 39 40#endif /* _XE_GT_TLB_INVALIDATION_ */