1 /* SPDX-License-Identifier: MIT */ 2 /* 3 * Copyright © 2019 Intel Corporation 4 */ 5 6 #ifndef __I915_GEM_LMEM_H 7 #define __I915_GEM_LMEM_H 8 9 #include <linux/types.h> 10 11 #define drm_i915_private inteldrm_softc 12 struct drm_i915_private; 13 struct drm_i915_gem_object; 14 struct intel_memory_region; 15 16 void * 17 i915_gem_object_lmem_io_map(struct drm_i915_gem_object *obj, 18 unsigned long n, 19 unsigned long size); 20 21 bool i915_gem_object_is_lmem(struct drm_i915_gem_object *obj); 22 23 bool __i915_gem_object_is_lmem(struct drm_i915_gem_object *obj); 24 25 struct drm_i915_gem_object * 26 i915_gem_object_create_lmem_from_data(struct drm_i915_private *i915, 27 const void *data, size_t size); 28 29 struct drm_i915_gem_object * 30 __i915_gem_object_create_lmem_with_ps(struct drm_i915_private *i915, 31 resource_size_t size, 32 resource_size_t page_size, 33 unsigned int flags); 34 struct drm_i915_gem_object * 35 i915_gem_object_create_lmem(struct drm_i915_private *i915, 36 resource_size_t size, 37 unsigned int flags); 38 39 #endif /* !__I915_GEM_LMEM_H */ 40