Lines Matching refs:bo

73 	struct radeon_bo *bo, *next_bo;  in radeon_mn_destroy()  local
82 list_for_each_entry_safe(bo, next_bo, &node->bos, mn_list) { in radeon_mn_destroy()
83 bo->mn = NULL; in radeon_mn_destroy()
84 list_del_init(&bo->mn_list); in radeon_mn_destroy()
137 struct radeon_bo *bo; in radeon_mn_invalidate_range_start() local
143 list_for_each_entry(bo, &node->bos, mn_list) { in radeon_mn_invalidate_range_start()
145 if (!bo->tbo.ttm || bo->tbo.ttm->state != tt_bound) in radeon_mn_invalidate_range_start()
148 r = radeon_bo_reserve(bo, true); in radeon_mn_invalidate_range_start()
154 r = reservation_object_wait_timeout_rcu(bo->tbo.resv, in radeon_mn_invalidate_range_start()
159 radeon_ttm_placement_from_domain(bo, RADEON_GEM_DOMAIN_CPU); in radeon_mn_invalidate_range_start()
160 r = ttm_bo_validate(&bo->tbo, &bo->placement, false, false); in radeon_mn_invalidate_range_start()
164 radeon_bo_unreserve(bo); in radeon_mn_invalidate_range_start()
237 int radeon_mn_register(struct radeon_bo *bo, unsigned long addr) in radeon_mn_register() argument
239 unsigned long end = addr + radeon_bo_size(bo) - 1; in radeon_mn_register()
240 struct radeon_device *rdev = bo->rdev; in radeon_mn_register()
271 bo->mn = rmn; in radeon_mn_register()
277 list_add(&bo->mn_list, &node->bos); in radeon_mn_register()
293 void radeon_mn_unregister(struct radeon_bo *bo) in radeon_mn_unregister() argument
295 struct radeon_device *rdev = bo->rdev; in radeon_mn_unregister()
300 rmn = bo->mn; in radeon_mn_unregister()
308 head = bo->mn_list.next; in radeon_mn_unregister()
310 bo->mn = NULL; in radeon_mn_unregister()
311 list_del(&bo->mn_list); in radeon_mn_unregister()