/Linux-v5.4/drivers/gpu/drm/qxl/ |
D | qxl_object.c | 32 struct qxl_bo *bo; in qxl_ttm_bo_destroy() local 35 bo = to_qxl_bo(tbo); in qxl_ttm_bo_destroy() 36 qdev = (struct qxl_device *)bo->tbo.base.dev->dev_private; in qxl_ttm_bo_destroy() 38 qxl_surface_evict(qdev, bo, false); in qxl_ttm_bo_destroy() 39 WARN_ON_ONCE(bo->map_count > 0); in qxl_ttm_bo_destroy() 41 list_del_init(&bo->list); in qxl_ttm_bo_destroy() 43 drm_gem_object_release(&bo->tbo.base); in qxl_ttm_bo_destroy() 44 kfree(bo); in qxl_ttm_bo_destroy() 47 bool qxl_ttm_bo_is_qxl_bo(struct ttm_buffer_object *bo) in qxl_ttm_bo_is_qxl_bo() argument 49 if (bo->destroy == &qxl_ttm_bo_destroy) in qxl_ttm_bo_is_qxl_bo() [all …]
|
D | qxl_object.h | 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, NULL); in qxl_bo_reserve() 37 struct drm_device *ddev = bo->tbo.base.dev; in qxl_bo_reserve() 39 dev_err(ddev->dev, "%p reserve failed\n", bo); in qxl_bo_reserve() 46 static inline void qxl_bo_unreserve(struct qxl_bo *bo) in qxl_bo_unreserve() argument 48 ttm_bo_unreserve(&bo->tbo); in qxl_bo_unreserve() 51 static inline u64 qxl_bo_gpu_offset(struct qxl_bo *bo) in qxl_bo_gpu_offset() argument 53 return bo->tbo.offset; in qxl_bo_gpu_offset() 56 static inline unsigned long qxl_bo_size(struct qxl_bo *bo) in qxl_bo_size() argument 58 return bo->tbo.num_pages << PAGE_SHIFT; in qxl_bo_size() [all …]
|
D | qxl_release.c | 164 struct qxl_bo *bo; in qxl_release_free_list() local 168 bo = to_qxl_bo(entry->tv.bo); in qxl_release_free_list() 169 qxl_bo_unref(&bo); in qxl_release_free_list() 202 struct qxl_bo **bo) in qxl_release_bo_alloc() argument 206 QXL_GEM_DOMAIN_VRAM, NULL, bo); in qxl_release_bo_alloc() 209 int qxl_release_list_add(struct qxl_release *release, struct qxl_bo *bo) in qxl_release_list_add() argument 214 if (entry->tv.bo == &bo->tbo) in qxl_release_list_add() 222 qxl_bo_ref(bo); in qxl_release_list_add() 223 entry->tv.bo = &bo->tbo; in qxl_release_list_add() 229 static int qxl_release_validate_bo(struct qxl_bo *bo) in qxl_release_validate_bo() argument [all …]
|
/Linux-v5.4/drivers/gpu/drm/tegra/ |
D | gem.c | 23 static void tegra_bo_put(struct host1x_bo *bo) in tegra_bo_put() argument 25 struct tegra_bo *obj = host1x_to_tegra_bo(bo); in tegra_bo_put() 30 static dma_addr_t tegra_bo_pin(struct host1x_bo *bo, struct sg_table **sgt) in tegra_bo_pin() argument 32 struct tegra_bo *obj = host1x_to_tegra_bo(bo); in tegra_bo_pin() 39 static void tegra_bo_unpin(struct host1x_bo *bo, struct sg_table *sgt) in tegra_bo_unpin() argument 43 static void *tegra_bo_mmap(struct host1x_bo *bo) in tegra_bo_mmap() argument 45 struct tegra_bo *obj = host1x_to_tegra_bo(bo); in tegra_bo_mmap() 56 static void tegra_bo_munmap(struct host1x_bo *bo, void *addr) in tegra_bo_munmap() argument 58 struct tegra_bo *obj = host1x_to_tegra_bo(bo); in tegra_bo_munmap() 68 static void *tegra_bo_kmap(struct host1x_bo *bo, unsigned int page) in tegra_bo_kmap() argument [all …]
|
/Linux-v5.4/drivers/gpu/drm/radeon/ |
D | radeon_object.c | 46 static void radeon_bo_clear_surface_reg(struct radeon_bo *bo); 53 static void radeon_update_memory_usage(struct radeon_bo *bo, in radeon_update_memory_usage() argument 56 struct radeon_device *rdev = bo->rdev; in radeon_update_memory_usage() 57 u64 size = (u64)bo->tbo.num_pages << PAGE_SHIFT; in radeon_update_memory_usage() 77 struct radeon_bo *bo; in radeon_ttm_bo_destroy() local 79 bo = container_of(tbo, struct radeon_bo, tbo); in radeon_ttm_bo_destroy() 81 radeon_update_memory_usage(bo, bo->tbo.mem.mem_type, -1); in radeon_ttm_bo_destroy() 83 mutex_lock(&bo->rdev->gem.mutex); in radeon_ttm_bo_destroy() 84 list_del_init(&bo->list); in radeon_ttm_bo_destroy() 85 mutex_unlock(&bo->rdev->gem.mutex); in radeon_ttm_bo_destroy() [all …]
|
D | radeon_prime.c | 36 struct radeon_bo *bo = gem_to_radeon_bo(obj); in radeon_gem_prime_get_sg_table() local 37 int npages = bo->tbo.num_pages; in radeon_gem_prime_get_sg_table() 39 return drm_prime_pages_to_sg(bo->tbo.ttm->pages, npages); in radeon_gem_prime_get_sg_table() 44 struct radeon_bo *bo = gem_to_radeon_bo(obj); in radeon_gem_prime_vmap() local 47 ret = ttm_bo_kmap(&bo->tbo, 0, bo->tbo.num_pages, in radeon_gem_prime_vmap() 48 &bo->dma_buf_vmap); in radeon_gem_prime_vmap() 52 return bo->dma_buf_vmap.virtual; in radeon_gem_prime_vmap() 57 struct radeon_bo *bo = gem_to_radeon_bo(obj); in radeon_gem_prime_vunmap() local 59 ttm_bo_kunmap(&bo->dma_buf_vmap); in radeon_gem_prime_vunmap() 68 struct radeon_bo *bo; in radeon_gem_prime_import_sg_table() local [all …]
|
D | radeon_object.h | 64 static inline int radeon_bo_reserve(struct radeon_bo *bo, bool no_intr) in radeon_bo_reserve() argument 68 r = ttm_bo_reserve(&bo->tbo, !no_intr, false, NULL); in radeon_bo_reserve() 71 dev_err(bo->rdev->dev, "%p reserve failed\n", bo); in radeon_bo_reserve() 77 static inline void radeon_bo_unreserve(struct radeon_bo *bo) in radeon_bo_unreserve() argument 79 ttm_bo_unreserve(&bo->tbo); in radeon_bo_unreserve() 91 static inline u64 radeon_bo_gpu_offset(struct radeon_bo *bo) in radeon_bo_gpu_offset() argument 93 return bo->tbo.offset; in radeon_bo_gpu_offset() 96 static inline unsigned long radeon_bo_size(struct radeon_bo *bo) in radeon_bo_size() argument 98 return bo->tbo.num_pages << PAGE_SHIFT; in radeon_bo_size() 101 static inline unsigned radeon_bo_ngpu_pages(struct radeon_bo *bo) in radeon_bo_ngpu_pages() argument [all …]
|
/Linux-v5.4/drivers/gpu/drm/ttm/ |
D | ttm_bo.c | 61 static void ttm_bo_default_destroy(struct ttm_buffer_object *bo) in ttm_bo_default_destroy() argument 63 kfree(bo); in ttm_bo_default_destroy() 95 static void ttm_bo_mem_space_debug(struct ttm_buffer_object *bo, in ttm_bo_mem_space_debug() argument 102 bo, bo->mem.num_pages, bo->mem.size >> 10, in ttm_bo_mem_space_debug() 103 bo->mem.size >> 20); in ttm_bo_mem_space_debug() 111 ttm_mem_type_debug(bo->bdev, &p, mem_type); in ttm_bo_mem_space_debug() 149 struct ttm_buffer_object *bo = in ttm_bo_release_list() local 151 struct ttm_bo_device *bdev = bo->bdev; in ttm_bo_release_list() 152 size_t acc_size = bo->acc_size; in ttm_bo_release_list() 154 BUG_ON(kref_read(&bo->list_kref)); in ttm_bo_release_list() [all …]
|
D | ttm_bo_vm.c | 47 static vm_fault_t ttm_bo_vm_fault_idle(struct ttm_buffer_object *bo, in ttm_bo_vm_fault_idle() argument 53 if (likely(!bo->moving)) in ttm_bo_vm_fault_idle() 59 if (dma_fence_is_signaled(bo->moving)) in ttm_bo_vm_fault_idle() 71 ttm_bo_get(bo); in ttm_bo_vm_fault_idle() 73 (void) dma_fence_wait(bo->moving, true); in ttm_bo_vm_fault_idle() 74 dma_resv_unlock(bo->base.resv); in ttm_bo_vm_fault_idle() 75 ttm_bo_put(bo); in ttm_bo_vm_fault_idle() 82 err = dma_fence_wait(bo->moving, true); in ttm_bo_vm_fault_idle() 90 dma_fence_put(bo->moving); in ttm_bo_vm_fault_idle() 91 bo->moving = NULL; in ttm_bo_vm_fault_idle() [all …]
|
D | ttm_execbuf_util.c | 40 struct ttm_buffer_object *bo = entry->bo; in ttm_eu_backoff_reservation_reverse() local 42 dma_resv_unlock(bo->base.resv); in ttm_eu_backoff_reservation_reverse() 51 struct ttm_buffer_object *bo = entry->bo; in ttm_eu_del_from_lru_locked() local 52 ttm_bo_del_from_lru(bo); in ttm_eu_del_from_lru_locked() 66 glob = entry->bo->bdev->glob; in ttm_eu_backoff_reservation() 70 struct ttm_buffer_object *bo = entry->bo; in ttm_eu_backoff_reservation() local 72 if (list_empty(&bo->lru)) in ttm_eu_backoff_reservation() 73 ttm_bo_add_to_lru(bo); in ttm_eu_backoff_reservation() 74 dma_resv_unlock(bo->base.resv); in ttm_eu_backoff_reservation() 107 glob = entry->bo->bdev->glob; in ttm_eu_reserve_buffers() [all …]
|
D | ttm_bo_util.c | 45 struct ttm_buffer_object *bo; member 48 void ttm_bo_free_old_node(struct ttm_buffer_object *bo) in ttm_bo_free_old_node() argument 50 ttm_bo_mem_put(bo, &bo->mem); in ttm_bo_free_old_node() 53 int ttm_bo_move_ttm(struct ttm_buffer_object *bo, in ttm_bo_move_ttm() argument 57 struct ttm_tt *ttm = bo->ttm; in ttm_bo_move_ttm() 58 struct ttm_mem_reg *old_mem = &bo->mem; in ttm_bo_move_ttm() 62 ret = ttm_bo_wait(bo, ctx->interruptible, ctx->no_wait_gpu); in ttm_bo_move_ttm() 71 ttm_bo_free_old_node(bo); in ttm_bo_move_ttm() 118 struct ttm_buffer_object *bo; in ttm_mem_io_evict() local 123 bo = list_first_entry(&man->io_reserve_lru, in ttm_mem_io_evict() [all …]
|
/Linux-v5.4/drivers/gpu/drm/lima/ |
D | lima_object.c | 10 void lima_bo_destroy(struct lima_bo *bo) in lima_bo_destroy() argument 12 if (bo->sgt) { in lima_bo_destroy() 13 kfree(bo->pages); in lima_bo_destroy() 14 drm_prime_gem_destroy(&bo->gem, bo->sgt); in lima_bo_destroy() 16 if (bo->pages_dma_addr) { in lima_bo_destroy() 17 int i, npages = bo->gem.size >> PAGE_SHIFT; in lima_bo_destroy() 20 if (bo->pages_dma_addr[i]) in lima_bo_destroy() 21 dma_unmap_page(bo->gem.dev->dev, in lima_bo_destroy() 22 bo->pages_dma_addr[i], in lima_bo_destroy() 27 if (bo->pages) in lima_bo_destroy() [all …]
|
/Linux-v5.4/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_object.c | 62 static void amdgpu_bo_subtract_pin_size(struct amdgpu_bo *bo) in amdgpu_bo_subtract_pin_size() argument 64 struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev); in amdgpu_bo_subtract_pin_size() 66 if (bo->tbo.mem.mem_type == TTM_PL_VRAM) { in amdgpu_bo_subtract_pin_size() 67 atomic64_sub(amdgpu_bo_size(bo), &adev->vram_pin_size); in amdgpu_bo_subtract_pin_size() 68 atomic64_sub(amdgpu_vram_mgr_bo_visible_size(bo), in amdgpu_bo_subtract_pin_size() 70 } else if (bo->tbo.mem.mem_type == TTM_PL_TT) { in amdgpu_bo_subtract_pin_size() 71 atomic64_sub(amdgpu_bo_size(bo), &adev->gart_pin_size); in amdgpu_bo_subtract_pin_size() 78 struct amdgpu_bo *bo = ttm_to_amdgpu_bo(tbo); in amdgpu_bo_destroy() local 80 if (bo->pin_count > 0) in amdgpu_bo_destroy() 81 amdgpu_bo_subtract_pin_size(bo); in amdgpu_bo_destroy() [all …]
|
D | amdgpu_dma_buf.c | 51 struct amdgpu_bo *bo = gem_to_amdgpu_bo(obj); in amdgpu_gem_prime_get_sg_table() local 52 int npages = bo->tbo.num_pages; in amdgpu_gem_prime_get_sg_table() 54 return drm_prime_pages_to_sg(bo->tbo.ttm->pages, npages); in amdgpu_gem_prime_get_sg_table() 68 struct amdgpu_bo *bo = gem_to_amdgpu_bo(obj); in amdgpu_gem_prime_vmap() local 71 ret = ttm_bo_kmap(&bo->tbo, 0, bo->tbo.num_pages, in amdgpu_gem_prime_vmap() 72 &bo->dma_buf_vmap); in amdgpu_gem_prime_vmap() 76 return bo->dma_buf_vmap.virtual; in amdgpu_gem_prime_vmap() 88 struct amdgpu_bo *bo = gem_to_amdgpu_bo(obj); in amdgpu_gem_prime_vunmap() local 90 ttm_bo_kunmap(&bo->dma_buf_vmap); in amdgpu_gem_prime_vunmap() 107 struct amdgpu_bo *bo = gem_to_amdgpu_bo(obj); in amdgpu_gem_prime_mmap() local [all …]
|
D | amdgpu_object.h | 152 static inline int amdgpu_bo_reserve(struct amdgpu_bo *bo, bool no_intr) in amdgpu_bo_reserve() argument 154 struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev); in amdgpu_bo_reserve() 157 r = __ttm_bo_reserve(&bo->tbo, !no_intr, false, NULL); in amdgpu_bo_reserve() 160 dev_err(adev->dev, "%p reserve failed\n", bo); in amdgpu_bo_reserve() 166 static inline void amdgpu_bo_unreserve(struct amdgpu_bo *bo) in amdgpu_bo_unreserve() argument 168 ttm_bo_unreserve(&bo->tbo); in amdgpu_bo_unreserve() 171 static inline unsigned long amdgpu_bo_size(struct amdgpu_bo *bo) in amdgpu_bo_size() argument 173 return bo->tbo.num_pages << PAGE_SHIFT; in amdgpu_bo_size() 176 static inline unsigned amdgpu_bo_ngpu_pages(struct amdgpu_bo *bo) in amdgpu_bo_ngpu_pages() argument 178 return (bo->tbo.num_pages << PAGE_SHIFT) / AMDGPU_GPU_PAGE_SIZE; in amdgpu_bo_ngpu_pages() [all …]
|
D | amdgpu_amdkfd_gpuvm.c | 194 void amdgpu_amdkfd_unreserve_memory_limit(struct amdgpu_bo *bo) in amdgpu_amdkfd_unreserve_memory_limit() argument 196 struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev); in amdgpu_amdkfd_unreserve_memory_limit() 197 u32 domain = bo->preferred_domains; in amdgpu_amdkfd_unreserve_memory_limit() 198 bool sg = (bo->preferred_domains == AMDGPU_GEM_DOMAIN_CPU); in amdgpu_amdkfd_unreserve_memory_limit() 200 if (bo->flags & AMDGPU_AMDKFD_USERPTR_BO) { in amdgpu_amdkfd_unreserve_memory_limit() 205 unreserve_mem_limit(adev, amdgpu_bo_size(bo), domain, sg); in amdgpu_amdkfd_unreserve_memory_limit() 218 static int amdgpu_amdkfd_remove_eviction_fence(struct amdgpu_bo *bo, in amdgpu_amdkfd_remove_eviction_fence() argument 221 struct dma_resv *resv = bo->tbo.base.resv; in amdgpu_amdkfd_remove_eviction_fence() 274 static int amdgpu_amdkfd_bo_validate(struct amdgpu_bo *bo, uint32_t domain, in amdgpu_amdkfd_bo_validate() argument 280 if (WARN(amdgpu_ttm_tt_get_usermm(bo->tbo.ttm), in amdgpu_amdkfd_bo_validate() [all …]
|
/Linux-v5.4/drivers/gpu/drm/virtio/ |
D | virtgpu_object.c | 62 struct virtio_gpu_object *bo; in virtio_gpu_ttm_bo_destroy() local 65 bo = container_of(tbo, struct virtio_gpu_object, tbo); in virtio_gpu_ttm_bo_destroy() 66 vgdev = (struct virtio_gpu_device *)bo->gem_base.dev->dev_private; in virtio_gpu_ttm_bo_destroy() 68 if (bo->created) in virtio_gpu_ttm_bo_destroy() 69 virtio_gpu_cmd_unref_resource(vgdev, bo->hw_res_handle); in virtio_gpu_ttm_bo_destroy() 70 if (bo->pages) in virtio_gpu_ttm_bo_destroy() 71 virtio_gpu_object_free_sg_table(bo); in virtio_gpu_ttm_bo_destroy() 72 if (bo->vmap) in virtio_gpu_ttm_bo_destroy() 73 virtio_gpu_object_kunmap(bo); in virtio_gpu_ttm_bo_destroy() 74 drm_gem_object_release(&bo->gem_base); in virtio_gpu_ttm_bo_destroy() [all …]
|
/Linux-v5.4/drivers/gpu/drm/vc4/ |
D | vc4_bo.c | 130 struct vc4_bo *bo = to_vc4_bo(gem_obj); in vc4_bo_set_label() local 140 vc4->bo_labels[bo->label].num_allocated--; in vc4_bo_set_label() 141 vc4->bo_labels[bo->label].size_allocated -= gem_obj->size; in vc4_bo_set_label() 143 if (vc4->bo_labels[bo->label].num_allocated == 0 && in vc4_bo_set_label() 144 is_user_label(bo->label)) { in vc4_bo_set_label() 150 kfree(vc4->bo_labels[bo->label].name); in vc4_bo_set_label() 151 vc4->bo_labels[bo->label].name = NULL; in vc4_bo_set_label() 154 bo->label = label; in vc4_bo_set_label() 162 static void vc4_bo_destroy(struct vc4_bo *bo) in vc4_bo_destroy() argument 164 struct drm_gem_object *obj = &bo->base.base; in vc4_bo_destroy() [all …]
|
D | vc4_gem.c | 52 struct drm_gem_object **bo; member 61 drm_gem_object_put_unlocked(state->bo[i]); in vc4_free_hang_state() 105 state->bo = get_state->bo; in vc4_get_hang_state_ioctl() 115 struct vc4_bo *vc4_bo = to_vc4_bo(kernel_state->bo[i]); in vc4_get_hang_state_ioctl() 118 ret = drm_gem_handle_create(file_priv, kernel_state->bo[i], in vc4_get_hang_state_ioctl() 130 if (copy_to_user(u64_to_user_ptr(get_state->bo), in vc4_get_hang_state_ioctl() 155 struct vc4_bo *bo; in vc4_save_hang_state() local 180 list_for_each_entry(bo, &exec[i]->unref_list, unref_head) in vc4_save_hang_state() 185 kernel_state->bo = kcalloc(state->bo_count, in vc4_save_hang_state() 186 sizeof(*kernel_state->bo), GFP_ATOMIC); in vc4_save_hang_state() [all …]
|
/Linux-v5.4/include/drm/ttm/ |
D | ttm_bo_driver.h | 107 struct ttm_buffer_object *bo, 235 struct ttm_tt *(*ttm_tt_create)(struct ttm_buffer_object *bo, 284 bool (*eviction_valuable)(struct ttm_buffer_object *bo, 296 void (*evict_flags)(struct ttm_buffer_object *bo, 310 int (*move)(struct ttm_buffer_object *bo, bool evict, 326 int (*verify_access)(struct ttm_buffer_object *bo, 336 void (*move_notify)(struct ttm_buffer_object *bo, 341 int (*fault_reserve_notify)(struct ttm_buffer_object *bo); 346 void (*swap_notify)(struct ttm_buffer_object *bo); 365 unsigned long (*io_mem_pfn)(struct ttm_buffer_object *bo, [all …]
|
D | ttm_bo_api.h | 259 struct ttm_buffer_object *bo; member 291 static inline void ttm_bo_get(struct ttm_buffer_object *bo) in ttm_bo_get() argument 293 kref_get(&bo->kref); in ttm_bo_get() 307 ttm_bo_get_unless_zero(struct ttm_buffer_object *bo) in ttm_bo_get_unless_zero() argument 309 if (!kref_get_unless_zero(&bo->kref)) in ttm_bo_get_unless_zero() 311 return bo; in ttm_bo_get_unless_zero() 328 int ttm_bo_wait(struct ttm_buffer_object *bo, bool interruptible, bool no_wait); 357 int ttm_bo_validate(struct ttm_buffer_object *bo, 368 void ttm_bo_put(struct ttm_buffer_object *bo); 380 void ttm_bo_add_to_lru(struct ttm_buffer_object *bo); [all …]
|
/Linux-v5.4/drivers/gpu/drm/panfrost/ |
D | panfrost_gem.c | 19 struct panfrost_gem_object *bo = to_panfrost_bo(obj); in panfrost_gem_free_object() local 22 if (bo->sgts) { in panfrost_gem_free_object() 24 int n_sgt = bo->base.base.size / SZ_2M; in panfrost_gem_free_object() 27 if (bo->sgts[i].sgl) { in panfrost_gem_free_object() 28 dma_unmap_sg(pfdev->dev, bo->sgts[i].sgl, in panfrost_gem_free_object() 29 bo->sgts[i].nents, DMA_BIDIRECTIONAL); in panfrost_gem_free_object() 30 sg_free_table(&bo->sgts[i]); in panfrost_gem_free_object() 33 kfree(bo->sgts); in panfrost_gem_free_object() 37 if (!list_empty(&bo->base.madv_list)) in panfrost_gem_free_object() 38 list_del(&bo->base.madv_list); in panfrost_gem_free_object() [all …]
|
/Linux-v5.4/include/linux/ |
D | host1x.h | 65 struct host1x_bo *(*get)(struct host1x_bo *bo); 66 void (*put)(struct host1x_bo *bo); 67 dma_addr_t (*pin)(struct host1x_bo *bo, struct sg_table **sgt); 68 void (*unpin)(struct host1x_bo *bo, struct sg_table *sgt); 69 void *(*mmap)(struct host1x_bo *bo); 70 void (*munmap)(struct host1x_bo *bo, void *addr); 71 void *(*kmap)(struct host1x_bo *bo, unsigned int pagenum); 72 void (*kunmap)(struct host1x_bo *bo, unsigned int pagenum, void *addr); 79 static inline void host1x_bo_init(struct host1x_bo *bo, in host1x_bo_init() argument 82 bo->ops = ops; in host1x_bo_init() [all …]
|
/Linux-v5.4/drivers/gpu/drm/v3d/ |
D | v3d_bo.c | 34 struct v3d_bo *bo = to_v3d_bo(obj); in v3d_free_object() local 36 v3d_mmu_remove_ptes(bo); in v3d_free_object() 44 drm_mm_remove_node(&bo->node); in v3d_free_object() 48 bo->base.pages_mark_dirty_on_put = true; in v3d_free_object() 69 struct v3d_bo *bo; in v3d_create_object() local 75 bo = kzalloc(sizeof(*bo), GFP_KERNEL); in v3d_create_object() 76 if (!bo) in v3d_create_object() 78 obj = &bo->base.base; in v3d_create_object() 82 INIT_LIST_HEAD(&bo->unref_head); in v3d_create_object() 84 return &bo->base.base; in v3d_create_object() [all …]
|
/Linux-v5.4/drivers/gpu/drm/vmwgfx/ |
D | vmwgfx_bo.c | 56 vmw_buffer_object(struct ttm_buffer_object *bo) in vmw_buffer_object() argument 58 return container_of(bo, struct vmw_buffer_object, base); in vmw_buffer_object() 71 vmw_user_buffer_object(struct ttm_buffer_object *bo) in vmw_user_buffer_object() argument 73 struct vmw_buffer_object *vmw_bo = vmw_buffer_object(bo); in vmw_user_buffer_object() 95 struct ttm_buffer_object *bo = &buf->base; in vmw_bo_pin_in_placement() local 105 ret = ttm_bo_reserve(bo, interruptible, false, NULL); in vmw_bo_pin_in_placement() 110 ret = ttm_bo_mem_compat(placement, &bo->mem, in vmw_bo_pin_in_placement() 113 ret = ttm_bo_validate(bo, placement, &ctx); in vmw_bo_pin_in_placement() 118 ttm_bo_unreserve(bo); in vmw_bo_pin_in_placement() 144 struct ttm_buffer_object *bo = &buf->base; in vmw_bo_pin_in_vram_or_gmr() local [all …]
|