1 /* 2 * SPDX-License-Identifier: MIT 3 * 4 * Copyright © 2019 Intel Corporation 5 */ 6 7 #ifndef __I915_GEM_MMAN_H__ 8 #define __I915_GEM_MMAN_H__ 9 10 #include <linux/mm_types.h> 11 #include <linux/types.h> 12 13 struct drm_device; 14 struct drm_file; 15 struct drm_i915_gem_object; 16 struct file; 17 struct i915_mmap_offset; 18 struct rwlock; 19 20 int i915_gem_mmap_gtt_version(void); 21 #ifdef __linux__ 22 int i915_gem_mmap(struct file *filp, struct vm_area_struct *vma); 23 #else 24 struct uvm_object *i915_gem_mmap(struct file *filp, vm_prot_t accessprot, 25 voff_t off, vsize_t size); 26 #endif 27 28 int i915_gem_dumb_mmap_offset(struct drm_file *file_priv, 29 struct drm_device *dev, 30 u32 handle, u64 *offset); 31 32 void __i915_gem_object_release_mmap_gtt(struct drm_i915_gem_object *obj); 33 void i915_gem_object_release_mmap_gtt(struct drm_i915_gem_object *obj); 34 35 void i915_gem_object_release_mmap_offset(struct drm_i915_gem_object *obj); 36 37 #endif 38