Lines Matching defs:tbo
54 if (lbo->tbo.base.size <= PAGE_SIZE)
94 lsdc_ttm_tt_create(struct ttm_buffer_object *tbo, uint32_t page_flags)
103 ret = ttm_sg_tt_init(tt, tbo, page_flags, ttm_cached);
140 static void lsdc_bo_evict_flags(struct ttm_buffer_object *tbo,
143 struct ttm_resource *resource = tbo->resource;
144 struct lsdc_bo *lbo = to_lsdc_bo(tbo);
159 static int lsdc_bo_move(struct ttm_buffer_object *tbo,
165 struct drm_device *ddev = tbo->base.dev;
166 struct ttm_resource *old_mem = tbo->resource;
167 struct lsdc_bo *lbo = to_lsdc_bo(tbo);
170 if (unlikely(tbo->pin_count > 0)) {
175 ret = ttm_bo_wait_ctx(tbo, ctx);
183 ttm_bo_move_null(tbo, new_mem);
187 if (old_mem->mem_type == TTM_PL_SYSTEM && !tbo->ttm) {
188 ttm_bo_move_null(tbo, new_mem);
198 ttm_bo_move_null(tbo, new_mem);
206 ttm_resource_free(tbo, &tbo->resource);
207 ttm_bo_assign_mem(tbo, new_mem);
217 return ttm_bo_move_memcpy(tbo, ctx, new_mem);
255 struct ttm_buffer_object *tbo = &lbo->tbo;
256 struct drm_device *ddev = tbo->base.dev;
257 struct ttm_resource *resource = tbo->resource;
259 if (unlikely(!tbo->pin_count)) {
272 struct ttm_buffer_object *tbo = &lbo->tbo;
274 return tbo->base.size;
279 return ttm_bo_reserve(&lbo->tbo, true, false, NULL);
284 return ttm_bo_unreserve(&lbo->tbo);
290 struct ttm_buffer_object *tbo = &lbo->tbo;
291 struct lsdc_device *ldev = tdev_to_ldev(tbo->bdev);
294 if (tbo->pin_count)
303 ret = ttm_bo_validate(tbo, &lbo->placement, &ctx);
315 ttm_bo_pin(tbo);
325 struct ttm_buffer_object *tbo = &lbo->tbo;
326 struct lsdc_device *ldev = tdev_to_ldev(tbo->bdev);
328 if (unlikely(!tbo->pin_count)) {
333 ttm_bo_unpin(tbo);
335 if (!tbo->pin_count) {
336 if (tbo->resource->mem_type == TTM_PL_VRAM)
338 else if (tbo->resource->mem_type == TTM_PL_TT)
345 drm_gem_object_get(&lbo->tbo.base);
350 drm_gem_object_put(&lbo->tbo.base);
355 struct ttm_buffer_object *tbo = &lbo->tbo;
356 struct drm_gem_object *gem = &tbo->base;
371 err = ttm_bo_kmap(tbo, 0, PFN_UP(lsdc_bo_size(lbo)), &lbo->kmap);
416 static void lsdc_bo_destroy(struct ttm_buffer_object *tbo)
418 struct lsdc_device *ldev = tdev_to_ldev(tbo->bdev);
419 struct lsdc_bo *lbo = to_lsdc_bo(tbo);
425 drm_gem_object_release(&tbo->base);
439 struct ttm_buffer_object *tbo;
454 tbo = &lbo->tbo;
458 ret = drm_gem_object_init(ddev, &tbo->base, size);
464 tbo->bdev = bdev;
476 ret = ttm_bo_init_validate(bdev, tbo, bo_type, &lbo->placement, 0,