Lines Matching refs:mem

54 int intel_region_to_ttm_type(const struct intel_memory_region *mem)  in intel_region_to_ttm_type()  argument
58 GEM_BUG_ON(mem->type != INTEL_MEMORY_LOCAL && in intel_region_to_ttm_type()
59 mem->type != INTEL_MEMORY_MOCK && in intel_region_to_ttm_type()
60 mem->type != INTEL_MEMORY_SYSTEM); in intel_region_to_ttm_type()
62 if (mem->type == INTEL_MEMORY_SYSTEM) in intel_region_to_ttm_type()
65 type = mem->instance + TTM_PL_PRIV; in intel_region_to_ttm_type()
82 int intel_region_ttm_init(struct intel_memory_region *mem) in intel_region_ttm_init() argument
84 struct ttm_device *bdev = &mem->i915->bdev; in intel_region_ttm_init()
85 int mem_type = intel_region_to_ttm_type(mem); in intel_region_ttm_init()
89 resource_size(&mem->region), in intel_region_ttm_init()
90 mem->io_size, in intel_region_ttm_init()
91 mem->min_page_size, PAGE_SIZE); in intel_region_ttm_init()
95 mem->region_private = ttm_manager_type(bdev, mem_type); in intel_region_ttm_init()
108 int intel_region_ttm_fini(struct intel_memory_region *mem) in intel_region_ttm_fini() argument
110 struct ttm_resource_manager *man = mem->region_private; in intel_region_ttm_fini()
124 i915_gem_flush_free_objects(mem->i915); in intel_region_ttm_fini()
126 mutex_lock(&mem->objects.lock); in intel_region_ttm_fini()
127 if (list_empty(&mem->objects.list)) in intel_region_ttm_fini()
129 mutex_unlock(&mem->objects.lock); in intel_region_ttm_fini()
134 drain_workqueue(mem->i915->bdev.wq); in intel_region_ttm_fini()
141 ret = i915_ttm_buddy_man_fini(&mem->i915->bdev, in intel_region_ttm_fini()
142 intel_region_to_ttm_type(mem)); in intel_region_ttm_fini()
144 mem->region_private = NULL; in intel_region_ttm_fini()
163 intel_region_ttm_resource_to_rsgt(struct intel_memory_region *mem, in intel_region_ttm_resource_to_rsgt() argument
167 if (mem->is_range_manager) { in intel_region_ttm_resource_to_rsgt()
172 mem->region.start, in intel_region_ttm_resource_to_rsgt()
175 return i915_rsgt_from_buddy_resource(res, mem->region.start, in intel_region_ttm_resource_to_rsgt()
198 intel_region_ttm_resource_alloc(struct intel_memory_region *mem, in intel_region_ttm_resource_alloc() argument
203 struct ttm_resource_manager *man = mem->region_private; in intel_region_ttm_resource_alloc()
222 } else if (mem->io_size && mem->io_size < mem->total) { in intel_region_ttm_resource_alloc()
227 if (WARN_ON(overflows_type(mem->io_size >> PAGE_SHIFT, place.lpfn))) { in intel_region_ttm_resource_alloc()
231 place.lpfn = mem->io_size >> PAGE_SHIFT; in intel_region_ttm_resource_alloc()
236 mock_bo.bdev = &mem->i915->bdev; in intel_region_ttm_resource_alloc()
255 void intel_region_ttm_resource_free(struct intel_memory_region *mem, in intel_region_ttm_resource_free() argument
258 struct ttm_resource_manager *man = mem->region_private; in intel_region_ttm_resource_free()
262 mock_bo.bdev = &mem->i915->bdev; in intel_region_ttm_resource_free()