Lines Matching refs:bo

30 static inline int qxl_bo_reserve(struct qxl_bo *bo, bool no_wait)  in qxl_bo_reserve()  argument
34 r = ttm_bo_reserve(&bo->tbo, true, no_wait, false, NULL); in qxl_bo_reserve()
37 struct qxl_device *qdev = (struct qxl_device *)bo->gem_base.dev->dev_private; in qxl_bo_reserve()
38 dev_err(qdev->dev, "%p reserve failed\n", bo); in qxl_bo_reserve()
45 static inline void qxl_bo_unreserve(struct qxl_bo *bo) in qxl_bo_unreserve() argument
47 ttm_bo_unreserve(&bo->tbo); in qxl_bo_unreserve()
50 static inline u64 qxl_bo_gpu_offset(struct qxl_bo *bo) in qxl_bo_gpu_offset() argument
52 return bo->tbo.offset; in qxl_bo_gpu_offset()
55 static inline unsigned long qxl_bo_size(struct qxl_bo *bo) in qxl_bo_size() argument
57 return bo->tbo.num_pages << PAGE_SHIFT; in qxl_bo_size()
60 static inline u64 qxl_bo_mmap_offset(struct qxl_bo *bo) in qxl_bo_mmap_offset() argument
62 return drm_vma_node_offset_addr(&bo->tbo.vma_node); in qxl_bo_mmap_offset()
65 static inline int qxl_bo_wait(struct qxl_bo *bo, u32 *mem_type, in qxl_bo_wait() argument
70 r = ttm_bo_reserve(&bo->tbo, true, no_wait, false, NULL); in qxl_bo_wait()
73 struct qxl_device *qdev = (struct qxl_device *)bo->gem_base.dev->dev_private; in qxl_bo_wait()
75 bo); in qxl_bo_wait()
80 *mem_type = bo->tbo.mem.mem_type; in qxl_bo_wait()
82 r = ttm_bo_wait(&bo->tbo, true, true, no_wait); in qxl_bo_wait()
83 ttm_bo_unreserve(&bo->tbo); in qxl_bo_wait()
92 extern int qxl_bo_kmap(struct qxl_bo *bo, void **ptr);
93 extern void qxl_bo_kunmap(struct qxl_bo *bo);
94 void *qxl_bo_kmap_atomic_page(struct qxl_device *qdev, struct qxl_bo *bo, int page_offset);
95 void qxl_bo_kunmap_atomic_page(struct qxl_device *qdev, struct qxl_bo *bo, void *map);
96 extern struct qxl_bo *qxl_bo_ref(struct qxl_bo *bo);
97 extern void qxl_bo_unref(struct qxl_bo **bo);
98 extern int qxl_bo_pin(struct qxl_bo *bo, u32 domain, u64 *gpu_addr);
99 extern int qxl_bo_unpin(struct qxl_bo *bo);
101 extern bool qxl_ttm_bo_is_qxl_bo(struct ttm_buffer_object *bo);