Lines Matching refs:tbo
53 if (lbo->tbo.base.size <= PAGE_SIZE)
95 lsdc_ttm_tt_create(struct ttm_buffer_object *tbo, uint32_t page_flags)
104 ret = ttm_sg_tt_init(tt, tbo, page_flags, ttm_cached);
141 static void lsdc_bo_evict_flags(struct ttm_buffer_object *tbo,
144 struct ttm_resource *resource = tbo->resource;
145 struct lsdc_bo *lbo = to_lsdc_bo(tbo);
160 static int lsdc_bo_move(struct ttm_buffer_object *tbo,
166 struct drm_device *ddev = tbo->base.dev;
167 struct ttm_resource *old_mem = tbo->resource;
168 struct lsdc_bo *lbo = to_lsdc_bo(tbo);
171 if (unlikely(tbo->pin_count > 0)) {
176 ret = ttm_bo_wait_ctx(tbo, ctx);
184 ttm_bo_move_null(tbo, new_mem);
188 if (old_mem->mem_type == TTM_PL_SYSTEM && !tbo->ttm) {
189 ttm_bo_move_null(tbo, new_mem);
199 ttm_bo_move_null(tbo, new_mem);
207 ttm_resource_free(tbo, &tbo->resource);
208 ttm_bo_assign_mem(tbo, new_mem);
218 return ttm_bo_move_memcpy(tbo, ctx, new_mem);
256 struct ttm_buffer_object *tbo = &lbo->tbo;
257 struct drm_device *ddev = tbo->base.dev;
258 struct ttm_resource *resource = tbo->resource;
260 if (unlikely(!tbo->pin_count)) {
273 struct ttm_buffer_object *tbo = &lbo->tbo;
275 return tbo->base.size;
280 return ttm_bo_reserve(&lbo->tbo, true, false, NULL);
285 return ttm_bo_unreserve(&lbo->tbo);
291 struct ttm_buffer_object *tbo = &lbo->tbo;
292 struct lsdc_device *ldev = tdev_to_ldev(tbo->bdev);
295 if (tbo->pin_count)
304 ret = ttm_bo_validate(tbo, &lbo->placement, &ctx);
316 ttm_bo_pin(tbo);
326 struct ttm_buffer_object *tbo = &lbo->tbo;
327 struct lsdc_device *ldev = tdev_to_ldev(tbo->bdev);
329 if (unlikely(!tbo->pin_count)) {
334 ttm_bo_unpin(tbo);
336 if (!tbo->pin_count) {
337 if (tbo->resource->mem_type == TTM_PL_VRAM)
339 else if (tbo->resource->mem_type == TTM_PL_TT)
346 struct ttm_buffer_object *tbo = &lbo->tbo;
348 ttm_bo_get(tbo);
353 struct ttm_buffer_object *tbo = &lbo->tbo;
355 ttm_bo_put(tbo);
360 struct ttm_buffer_object *tbo = &lbo->tbo;
361 struct drm_gem_object *gem = &tbo->base;
376 err = ttm_bo_kmap(tbo, 0, PFN_UP(lsdc_bo_size(lbo)), &lbo->kmap);
421 static void lsdc_bo_destroy(struct ttm_buffer_object *tbo)
423 struct lsdc_device *ldev = tdev_to_ldev(tbo->bdev);
424 struct lsdc_bo *lbo = to_lsdc_bo(tbo);
430 drm_gem_object_release(&tbo->base);
444 struct ttm_buffer_object *tbo;
459 tbo = &lbo->tbo;
463 ret = drm_gem_object_init(ddev, &tbo->base, size);
469 tbo->bdev = bdev;
481 ret = ttm_bo_init_validate(bdev, tbo, bo_type, &lbo->placement, 0,