Lines Matching +full:r +full:- +full:tile

1 /* SPDX-License-Identifier: MIT */
12 * xe_svm_devm_owner() - Return the owner of device private memory
16 * hmm_range_fault()-
37 /** struct xe_svm_range - SVM range */
47 * @tile_present: Tile mask of binding is present for this range.
52 * @tile_invalidated: Tile mask of binding is invalidated for this
59 * xe_svm_range_pages_valid() - SVM range pages valid
66 return drm_gpusvm_range_pages_valid(range->base.gpusvm, &range->base); in xe_svm_range_pages_valid()
69 int xe_devm_add(struct xe_tile *tile, struct xe_vram_region *vr);
87 int xe_svm_alloc_vram(struct xe_tile *tile, struct xe_svm_range *range,
111 struct drm_pagemap *xe_vma_resolve_pagemap(struct xe_vma *vma, struct xe_tile *tile);
114 * xe_svm_range_has_dma_mapping() - SVM range has DMA mapping
121 lockdep_assert_held(&range->base.gpusvm->notifier_lock); in xe_svm_range_has_dma_mapping()
122 return range->base.pages.flags.has_dma_mapping; in xe_svm_range_has_dma_mapping()
126 * to_xe_range - Convert a drm_gpusvm_range pointer to a xe_svm_range
127 * @r: Pointer to the drm_gpusvm_range structure
134 static inline struct xe_svm_range *to_xe_range(struct drm_gpusvm_range *r) in to_xe_range() argument
136 return container_of(r, struct xe_svm_range, base); in to_xe_range()
140 * xe_svm_range_start() - SVM range start address
147 return drm_gpusvm_range_start(&range->base); in xe_svm_range_start()
151 * xe_svm_range_end() - SVM range end address
158 return drm_gpusvm_range_end(&range->base); in xe_svm_range_end()
162 * xe_svm_range_size() - SVM range size
169 return drm_gpusvm_range_size(&range->base); in xe_svm_range_size()
207 int xe_devm_add(struct xe_tile *tile, struct xe_vram_region *vr) in xe_devm_add() argument
216 return drm_gpusvm_init(&vm->svm.gpusvm, "Xe SVM (simple)", &vm->xe->drm, in xe_svm_init()
227 xe_assert(vm->xe, xe_vm_is_closed(vm)); in xe_svm_fini()
228 drm_gpusvm_fini(&vm->svm.gpusvm); in xe_svm_fini()
263 xe_svm_alloc_vram(struct xe_tile *tile, struct xe_svm_range *range, in xe_svm_alloc_vram() argument
266 return -EOPNOTSUPP; in xe_svm_alloc_vram()
273 return ERR_PTR(-EINVAL); in xe_svm_range_find_or_insert()
280 return -EINVAL; in xe_svm_range_get_pages()
283 static inline struct xe_svm_range *to_xe_range(struct drm_gpusvm_range *r) in to_xe_range() argument
341 struct drm_pagemap *xe_vma_resolve_pagemap(struct xe_vma *vma, struct xe_tile *tile) in xe_vma_resolve_pagemap() argument
354 lockdep_assert_held_write(&(vm__)->svm.gpusvm.notifier_lock)
357 lockdep_assert_held_read(&(vm__)->svm.gpusvm.notifier_lock)
360 drm_gpusvm_notifier_lock(&(vm__)->svm.gpusvm)
363 down_read_interruptible(&(vm__)->svm.gpusvm.notifier_lock)
366 drm_gpusvm_notifier_unlock(&(vm__)->svm.gpusvm)