Lines Matching defs:obj

55 	struct drm_gem_object *obj;
61 obj = dev->driver->gem_create_object(dev, size);
62 if (IS_ERR(obj))
63 return ERR_CAST(obj);
64 shmem = to_drm_gem_shmem_obj(obj);
69 obj = &shmem->base;
72 if (!obj->funcs)
73 obj->funcs = &drm_gem_shmem_funcs;
76 drm_gem_private_object_init(dev, obj, size);
79 ret = drm_gem_object_init(dev, obj, size);
82 drm_gem_private_object_fini(obj);
86 ret = drm_gem_create_mmap_offset(obj);
100 mapping_set_gfp_mask(obj->filp->f_mapping, GFP_HIGHUSER |
107 drm_gem_object_release(obj);
109 kfree(obj);
139 struct drm_gem_object *obj = &shmem->base;
141 if (obj->import_attach) {
142 drm_prime_gem_destroy(obj, shmem->sgt);
146 drm_WARN_ON(obj->dev, shmem->vmap_use_count);
149 dma_unmap_sgtable(obj->dev->dev, shmem->sgt,
157 drm_WARN_ON(obj->dev, shmem->pages_use_count);
162 drm_gem_object_release(obj);
169 struct drm_gem_object *obj = &shmem->base;
177 pages = drm_gem_get_pages(obj);
179 drm_dbg_kms(obj->dev, "Failed to get pages (%ld)\n",
192 set_pages_array_wc(pages, obj->size >> PAGE_SHIFT);
208 struct drm_gem_object *obj = &shmem->base;
212 if (drm_WARN_ON_ONCE(obj->dev, !shmem->pages_use_count))
220 set_pages_array_wb(shmem->pages, obj->size >> PAGE_SHIFT);
223 drm_gem_put_pages(obj, shmem->pages,
262 struct drm_gem_object *obj = &shmem->base;
265 drm_WARN_ON(obj->dev, obj->import_attach);
286 struct drm_gem_object *obj = &shmem->base;
288 drm_WARN_ON(obj->dev, obj->import_attach);
314 struct drm_gem_object *obj = &shmem->base;
317 if (obj->import_attach) {
318 ret = dma_buf_vmap(obj->import_attach->dmabuf, map);
320 if (drm_WARN_ON(obj->dev, map->is_iomem)) {
321 dma_buf_vunmap(obj->import_attach->dmabuf, map);
341 shmem->vaddr = vmap(shmem->pages, obj->size >> PAGE_SHIFT,
350 drm_dbg_kms(obj->dev, "Failed to vmap pages, error %d\n", ret);
357 if (!obj->import_attach)
381 struct drm_gem_object *obj = &shmem->base;
383 if (obj->import_attach) {
384 dma_buf_vunmap(obj->import_attach->dmabuf, map);
388 if (drm_WARN_ON_ONCE(obj->dev, !shmem->vmap_use_count))
415 * Allocate an id of idr table where the obj is registered
443 struct drm_gem_object *obj = &shmem->base;
444 struct drm_device *dev = obj->dev;
448 drm_WARN_ON(obj->dev, !drm_gem_shmem_is_purgeable(shmem));
459 drm_vma_node_unmap(&obj->vma_node, dev->anon_inode->i_mapping);
460 drm_gem_free_mmap_offset(obj);
467 shmem_truncate_range(file_inode(obj->filp), 0, (loff_t)-1);
469 invalidate_mapping_pages(file_inode(obj->filp)->i_mapping, 0, (loff_t)-1);
513 struct drm_gem_object *obj = vma->vm_private_data;
514 struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj);
515 loff_t num_pages = obj->size >> PAGE_SHIFT;
526 drm_WARN_ON_ONCE(obj->dev, !shmem->pages) ||
542 struct drm_gem_object *obj = vma->vm_private_data;
543 struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj);
545 drm_WARN_ON(obj->dev, obj->import_attach);
554 if (!drm_WARN_ON_ONCE(obj->dev, !shmem->pages_use_count))
564 struct drm_gem_object *obj = vma->vm_private_data;
565 struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj);
594 struct drm_gem_object *obj = &shmem->base;
597 if (obj->import_attach) {
605 ret = dma_buf_mmap(obj->dma_buf, vma, 0);
609 drm_gem_object_put(obj);
664 struct drm_gem_object *obj = &shmem->base;
666 drm_WARN_ON(obj->dev, obj->import_attach);
668 return drm_prime_pages_to_sg(obj->dev, shmem->pages, obj->size >> PAGE_SHIFT);
674 struct drm_gem_object *obj = &shmem->base;
681 drm_WARN_ON(obj->dev, obj->import_attach);
693 ret = dma_map_sgtable(obj->dev->dev, sgt, DMA_BIDIRECTIONAL, 0);