Lines Matching refs:tbo
35 static void qxl_ttm_bo_destroy(struct ttm_buffer_object *tbo)
40 bo = to_qxl_bo(tbo);
41 qdev = to_qxl(bo->tbo.base.dev);
48 drm_gem_object_release(&bo->tbo.base);
65 if (qbo->tbo.base.size <= PAGE_SIZE)
128 r = drm_gem_object_init(&qdev->ddev, &bo->tbo.base, size);
133 bo->tbo.base.funcs = &qxl_object_funcs;
143 bo->tbo.priority = priority;
144 r = ttm_bo_init_reserved(&qdev->mman.bdev, &bo->tbo, type,
155 ttm_bo_pin(&bo->tbo);
156 ttm_bo_unreserve(&bo->tbo);
165 dma_resv_assert_held(bo->tbo.base.resv);
176 r = ttm_bo_vmap(&bo->tbo, &bo->map);
216 if (bo->tbo.resource->mem_type == TTM_PL_VRAM)
218 else if (bo->tbo.resource->mem_type == TTM_PL_PRIV)
223 offset = bo->tbo.resource->start << PAGE_SHIFT;
242 dma_resv_assert_held(bo->tbo.base.resv);
250 ttm_bo_vunmap(&bo->tbo, &bo->map);
270 if ((bo->tbo.resource->mem_type != TTM_PL_VRAM) &&
271 (bo->tbo.resource->mem_type != TTM_PL_PRIV))
285 drm_gem_object_put(&(*bo)->tbo.base);
291 drm_gem_object_get(&bo->tbo.base);
298 struct drm_device *ddev = bo->tbo.base.dev;
301 if (bo->tbo.pin_count) {
302 ttm_bo_pin(&bo->tbo);
306 r = ttm_bo_validate(&bo->tbo, &bo->placement, &ctx);
308 ttm_bo_pin(&bo->tbo);
316 ttm_bo_unpin(&bo->tbo);
364 &bo->tbo.base, bo, (unsigned long)bo->tbo.base.size,
365 *((unsigned long *)&bo->tbo.base.refcount));
370 drm_gem_object_put(&bo->tbo.base);