Lines Matching refs:bdev
133 struct ttm_device *bdev; in ttm_global_swapout() local
137 list_for_each_entry(bdev, &glob->device_list, device_list) { in ttm_global_swapout()
138 ret = ttm_device_swapout(bdev, ctx, gfp_flags); in ttm_global_swapout()
140 list_move_tail(&bdev->device_list, &glob->device_list); in ttm_global_swapout()
148 int ttm_device_swapout(struct ttm_device *bdev, struct ttm_operation_ctx *ctx, in ttm_device_swapout() argument
156 man = ttm_manager_type(bdev, i); in ttm_device_swapout()
160 lret = ttm_bo_swapout(bdev, ctx, man, gfp_flags, 1); in ttm_device_swapout()
184 int ttm_device_init(struct ttm_device *bdev, const struct ttm_device_funcs *funcs, in ttm_device_init() argument
199 bdev->wq = alloc_workqueue("ttm", in ttm_device_init()
201 if (!bdev->wq) { in ttm_device_init()
206 bdev->funcs = funcs; in ttm_device_init()
208 ttm_sys_man_init(bdev); in ttm_device_init()
215 ttm_pool_init(&bdev->pool, dev, nid, use_dma_alloc, use_dma32); in ttm_device_init()
217 bdev->vma_manager = vma_manager; in ttm_device_init()
218 spin_lock_init(&bdev->lru_lock); in ttm_device_init()
219 INIT_LIST_HEAD(&bdev->unevictable); in ttm_device_init()
220 bdev->dev_mapping = mapping; in ttm_device_init()
222 list_add_tail(&bdev->device_list, &glob->device_list); in ttm_device_init()
229 void ttm_device_fini(struct ttm_device *bdev) in ttm_device_fini() argument
235 list_del(&bdev->device_list); in ttm_device_fini()
238 drain_workqueue(bdev->wq); in ttm_device_fini()
239 destroy_workqueue(bdev->wq); in ttm_device_fini()
241 man = ttm_manager_type(bdev, TTM_PL_SYSTEM); in ttm_device_fini()
243 ttm_set_driver_manager(bdev, TTM_PL_SYSTEM, NULL); in ttm_device_fini()
245 spin_lock(&bdev->lru_lock); in ttm_device_fini()
249 spin_unlock(&bdev->lru_lock); in ttm_device_fini()
251 ttm_pool_fini(&bdev->pool); in ttm_device_fini()
256 static void ttm_device_clear_lru_dma_mappings(struct ttm_device *bdev, in ttm_device_clear_lru_dma_mappings() argument
261 spin_lock(&bdev->lru_lock); in ttm_device_clear_lru_dma_mappings()
270 spin_unlock(&bdev->lru_lock); in ttm_device_clear_lru_dma_mappings()
273 ttm_tt_unpopulate(bo->bdev, bo->ttm); in ttm_device_clear_lru_dma_mappings()
276 spin_lock(&bdev->lru_lock); in ttm_device_clear_lru_dma_mappings()
278 spin_unlock(&bdev->lru_lock); in ttm_device_clear_lru_dma_mappings()
281 void ttm_device_clear_dma_mappings(struct ttm_device *bdev) in ttm_device_clear_dma_mappings() argument
286 ttm_device_clear_lru_dma_mappings(bdev, &bdev->unevictable); in ttm_device_clear_dma_mappings()
289 man = ttm_manager_type(bdev, i); in ttm_device_clear_dma_mappings()
294 ttm_device_clear_lru_dma_mappings(bdev, &man->lru[j]); in ttm_device_clear_dma_mappings()