| /linux/drivers/gpu/drm/tegra/ |
| H A D | gem.c | 56 drm_gem_object_put(&obj->gem); in tegra_bo_put() 63 struct drm_gem_object *gem = &obj->gem; in tegra_bo_pin() local 97 map->size = gem->size; in tegra_bo_pin() 117 err = sg_alloc_table_from_pages(map->sgt, obj->pages, obj->num_pages, 0, gem->size, in tegra_bo_pin() 127 err = dma_get_sgtable(dev, map->sgt, obj->vaddr, obj->iova, gem->size); in tegra_bo_pin() 149 map->size = gem->size; in tegra_bo_pin() 221 drm_gem_object_get(&obj->gem); in tegra_bo_get() 250 bo->mm, bo->gem.size, PAGE_SIZE, 0, 0); in tegra_bo_iommu_map() 309 bo->gem.funcs = &tegra_gem_object_funcs; in tegra_bo_alloc_object() 314 err = drm_gem_object_init(drm, &bo->gem, size); in tegra_bo_alloc_object() [all …]
|
| H A D | gem.h | 56 struct drm_gem_object gem; member 73 static inline struct tegra_bo *to_tegra_bo(struct drm_gem_object *gem) in to_tegra_bo() argument 75 return container_of(gem, struct tegra_bo, gem); in to_tegra_bo() 90 void tegra_bo_free_object(struct drm_gem_object *gem); 96 int __tegra_gem_mmap(struct drm_gem_object *gem, struct vm_area_struct *vma); 99 struct dma_buf *tegra_gem_prime_export(struct drm_gem_object *gem,
|
| H A D | fb.c | 122 fb->obj[i] = &planes[i]->gem; in tegra_fb_alloc() 141 struct drm_gem_object *gem; in tegra_fb_create() local 151 gem = drm_gem_object_lookup(file, cmd->handles[i]); in tegra_fb_create() 152 if (!gem) { in tegra_fb_create() 162 if (gem->size < size) { in tegra_fb_create() 164 drm_gem_object_put(gem); in tegra_fb_create() 168 planes[i] = to_tegra_bo(gem); in tegra_fb_create() 181 drm_gem_object_put(&planes[i]->gem); in tegra_fb_create()
|
| H A D | drm.c | 252 refs[num_refs++] = &obj->gem; in tegra_drm_submit() 259 if (offset & 3 || offset > obj->gem.size) { in tegra_drm_submit() 282 refs[num_refs++] = &obj->gem; in tegra_drm_submit() 290 reloc->cmdbuf.offset >= obj->gem.size) { in tegra_drm_submit() 296 refs[num_refs++] = &obj->gem; in tegra_drm_submit() 298 if (reloc->target.offset >= obj->gem.size) { in tegra_drm_submit() 368 struct drm_gem_object *gem; in tegra_gem_mmap() local 371 gem = drm_gem_object_lookup(file, args->handle); in tegra_gem_mmap() 372 if (!gem) in tegra_gem_mmap() 375 bo = to_tegra_bo(gem); in tegra_gem_mmap() [all …]
|
| H A D | fbdev.c | 33 err = drm_gem_mmap_obj(&bo->gem, bo->gem.size, vma); in tegra_fb_mmap() 37 return __tegra_gem_mmap(&bo->gem, vma); in tegra_fb_mmap() 107 drm_gem_object_put(&bo->gem); in tegra_fbdev_driver_fbdev_probe()
|
| /linux/drivers/gpu/drm/ |
| H A D | drm_gem_ttm_helper.c | 28 const struct drm_gem_object *gem) in drm_gem_ttm_print_info() argument 44 const struct ttm_buffer_object *bo = drm_gem_ttm_of_gem(gem); in drm_gem_ttm_print_info() 67 int drm_gem_ttm_vmap(struct drm_gem_object *gem, in drm_gem_ttm_vmap() argument 70 struct ttm_buffer_object *bo = drm_gem_ttm_of_gem(gem); in drm_gem_ttm_vmap() 84 void drm_gem_ttm_vunmap(struct drm_gem_object *gem, in drm_gem_ttm_vunmap() argument 87 struct ttm_buffer_object *bo = drm_gem_ttm_of_gem(gem); in drm_gem_ttm_vunmap() 101 int drm_gem_ttm_mmap(struct drm_gem_object *gem, in drm_gem_ttm_mmap() argument 104 struct ttm_buffer_object *bo = drm_gem_ttm_of_gem(gem); in drm_gem_ttm_mmap() 115 drm_gem_object_put(gem); in drm_gem_ttm_mmap() 140 struct drm_gem_object *gem; in drm_gem_ttm_dumb_map_offset() local [all …]
|
| H A D | drm_client.c | 187 struct drm_gem_object *gem; in drm_client_buffer_delete() local 193 gem = buffer->fb->obj[0]; in drm_client_buffer_delete() 194 drm_gem_vunmap(gem, &buffer->map); in drm_client_buffer_delete() 201 drm_gem_object_put(buffer->gem); in drm_client_buffer_delete() 255 buffer->gem = obj; in drm_client_buffer_create() 292 struct drm_gem_object *gem = buffer->fb->obj[0]; in drm_client_buffer_vmap_local() local 296 drm_gem_lock(gem); in drm_client_buffer_vmap_local() 298 ret = drm_gem_vmap_locked(gem, map); in drm_client_buffer_vmap_local() 306 drm_gem_unlock(gem); in drm_client_buffer_vmap_local() 321 struct drm_gem_object *gem = buffer->fb->obj[0]; in drm_client_buffer_vunmap_local() local [all …]
|
| H A D | drm_gpuvm.c | 1323 struct drm_gem_object *obj = va->gem.obj; in drm_gpuvm_prepare_range() 1595 INIT_LIST_HEAD(&vm_bo->list.entry.gem); in drm_gpuvm_bo_create() 1656 list_del(&vm_bo->list.entry.gem); in drm_gpuvm_bo_destroy() 1708 list_del(&vm_bo->list.entry.gem); in drm_gpuvm_bo_into_zombie() 1876 list_add_tail(&vm_bo->list.entry.gem, &obj->gpuva.list); in drm_gpuvm_bo_obtain_locked() 1919 list_add_tail(&__vm_bo->list.entry.gem, &obj->gpuva.list); in drm_gpuvm_bo_obtain_prealloc() 2096 struct drm_gem_object *obj = va->gem.obj; in drm_gpuva_link() 2107 list_add_tail(&va->gem.entry, &vm_bo->list.gpuva); in drm_gpuva_link() 2131 struct drm_gem_object *obj = va->gem.obj; in drm_gpuva_unlink() 2138 list_del_init(&va->gem.entry); in drm_gpuva_unlink() [all …]
|
| H A D | drm_gem_vram_helper.c | 186 struct drm_gem_object *gem; in drm_gem_vram_create() local 195 gem = dev->driver->gem_create_object(dev, size); in drm_gem_vram_create() 196 if (IS_ERR(gem)) in drm_gem_vram_create() 197 return ERR_CAST(gem); in drm_gem_vram_create() 198 gbo = drm_gem_vram_of_gem(gem); in drm_gem_vram_create() 203 gem = &gbo->bo.base; in drm_gem_vram_create() 206 if (!gem->funcs) in drm_gem_vram_create() 207 gem->funcs = &drm_gem_vram_object_funcs; in drm_gem_vram_create() 209 ret = drm_gem_object_init(dev, gem, size); in drm_gem_vram_create() 520 static void drm_gem_vram_object_free(struct drm_gem_object *gem) in drm_gem_vram_object_free() argument [all …]
|
| H A D | drm_fb_dma_helper.c | 52 struct drm_gem_object *gem; in drm_fb_dma_get_gem_obj() local 54 gem = drm_gem_fb_get_obj(fb, plane); in drm_fb_dma_get_gem_obj() 55 if (!gem) in drm_fb_dma_get_gem_obj() 58 return to_drm_gem_dma_obj(gem); in drm_fb_dma_get_gem_obj()
|
| /linux/drivers/net/ethernet/sun/ |
| H A D | sungem.c | 117 static u16 __sungem_phy_read(struct gem *gp, int phy_addr, int reg) in __sungem_phy_read() 145 struct gem *gp = netdev_priv(dev); in _sungem_phy_read() 149 static inline u16 sungem_phy_read(struct gem *gp, int reg) in sungem_phy_read() 154 static void __sungem_phy_write(struct gem *gp, int phy_addr, int reg, u16 val) in __sungem_phy_write() 178 struct gem *gp = netdev_priv(dev); in _sungem_phy_write() 182 static inline void sungem_phy_write(struct gem *gp, int reg, u16 val) in sungem_phy_write() 187 static inline void gem_enable_ints(struct gem *gp) in gem_enable_ints() 193 static inline void gem_disable_ints(struct gem *gp) in gem_disable_ints() 200 static void gem_get_cell(struct gem *gp) in gem_get_cell() 214 static void gem_put_cell(struct gem *gp) in gem_put_cell() [all …]
|
| /linux/drivers/gpu/drm/nouveau/ |
| H A D | nouveau_gem.c | 77 nouveau_gem_object_del(struct drm_gem_object *gem) in nouveau_gem_object_del() argument 79 struct nouveau_bo *nvbo = nouveau_gem_object(gem); in nouveau_gem_object_del() 97 nouveau_gem_object_open(struct drm_gem_object *gem, struct drm_file *file_priv) in nouveau_gem_object_open() argument 100 struct nouveau_bo *nvbo = nouveau_gem_object(gem); in nouveau_gem_object_open() 183 nouveau_gem_object_close(struct drm_gem_object *gem, struct drm_file *file_priv) in nouveau_gem_object_close() argument 186 struct nouveau_bo *nvbo = nouveau_gem_object(gem); in nouveau_gem_object_close() 299 nouveau_gem_info(struct drm_file *file_priv, struct drm_gem_object *gem, in nouveau_gem_info() argument 303 struct nouveau_bo *nvbo = nouveau_gem_object(gem); in nouveau_gem_info() 372 nouveau_gem_set_domain(struct drm_gem_object *gem, uint32_t read_domains, in nouveau_gem_set_domain() argument 375 struct nouveau_bo *nvbo = nouveau_gem_object(gem); in nouveau_gem_set_domain() [all …]
|
| H A D | nouveau_gem.h | 11 nouveau_gem_object(struct drm_gem_object *gem) in nouveau_gem_object() argument 13 return gem ? container_of(gem, struct nouveau_bo, bo.base) : NULL; in nouveau_gem_object()
|
| H A D | nouveau_ttm.c | 192 drm->gem.vram_available >> PAGE_SHIFT); in nouveau_ttm_init_vram() 198 drm->gem.vram_available >> PAGE_SHIFT); in nouveau_ttm_init_vram() 221 unsigned long size_pages = drm->gem.gart_available >> PAGE_SHIFT; in nouveau_ttm_init_gtt() 315 drm->gem.vram_available = drm->client.device.info.ram_user; in nouveau_ttm_init() 331 drm->gem.gart_available = drm->client.vmm.vmm.limit; in nouveau_ttm_init() 333 drm->gem.gart_available = drm->agp.size; in nouveau_ttm_init() 345 NV_INFO(drm, "VRAM: %d MiB\n", (u32)(drm->gem.vram_available >> 20)); in nouveau_ttm_init() 346 NV_INFO(drm, "GART: %d MiB\n", (u32)(drm->gem.gart_available >> 20)); in nouveau_ttm_init()
|
| H A D | nouveau_uvmm.c | 76 } gem; member 195 u64 offset = uvma->va.gem.offset; in nouveau_uvma_map() 237 drm_gem_object_get(uvma->va.gem.obj); in nouveau_uvma_gem_get() 243 drm_gem_object_put(uvma->va.gem.obj); in nouveau_uvma_gem_put() 464 (op->gem.offset & non_page_bits) == 0; in op_map_aligned_to_page_shift() 470 struct nouveau_bo *nvbo = nouveau_gem_object(op->gem.obj); in select_page_shift() 508 drm_WARN_ONCE(op->gem.obj->dev, 1, "Could not find an appropriate page size.\n"); in select_page_shift() 829 return op->map.gem.obj; in op_gem_obj() 835 return op->remap.unmap->va->gem.obj; in op_gem_obj() 837 return op->unmap.va->gem.obj; in op_gem_obj() [all …]
|
| /linux/drivers/gpu/drm/xe/display/ |
| H A D | intel_fb_bo.c | 76 struct drm_gem_object *gem = drm_gem_object_lookup(filp, mode_cmd->handles[0]); in intel_fb_bo_lookup_valid_bo() local 78 if (!gem) in intel_fb_bo_lookup_valid_bo() 81 bo = gem_to_xe_bo(gem); in intel_fb_bo_lookup_valid_bo() 86 drm_gem_object_put(gem); in intel_fb_bo_lookup_valid_bo() 90 return gem; in intel_fb_bo_lookup_valid_bo()
|
| /linux/include/drm/ |
| H A D | drm_gem_ttm_helper.h | 18 const struct drm_gem_object *gem); 19 int drm_gem_ttm_vmap(struct drm_gem_object *gem, 21 void drm_gem_ttm_vunmap(struct drm_gem_object *gem, 23 int drm_gem_ttm_mmap(struct drm_gem_object *gem,
|
| /linux/drivers/gpu/drm/loongson/ |
| H A D | lsdc_gem.c | 169 mutex_lock(&ldev->gem.mutex); in lsdc_gem_object_create() 170 list_add_tail(&lbo->list, &ldev->gem.objects); in lsdc_gem_object_create() 171 mutex_unlock(&ldev->gem.mutex); in lsdc_gem_object_create() 257 mutex_init(&ldev->gem.mutex); in lsdc_gem_init() 258 INIT_LIST_HEAD(&ldev->gem.objects); in lsdc_gem_init() 269 mutex_lock(&ldev->gem.mutex); in lsdc_show_buffer_object() 273 list_for_each_entry(lbo, &ldev->gem.objects, list) { in lsdc_show_buffer_object() 284 mutex_unlock(&ldev->gem.mutex); in lsdc_show_buffer_object()
|
| H A D | lsdc_ttm.h | 47 static inline struct ttm_buffer_object *to_ttm_bo(struct drm_gem_object *gem) in to_ttm_bo() argument 49 return container_of(gem, struct ttm_buffer_object, base); in to_ttm_bo() 57 static inline struct lsdc_bo *gem_to_lsdc_bo(struct drm_gem_object *gem) in gem_to_lsdc_bo() argument 59 return container_of(gem, struct lsdc_bo, tbo.base); in gem_to_lsdc_bo()
|
| /linux/drivers/gpu/drm/qxl/ |
| H A D | qxl_gem.c | 69 mutex_lock(&qdev->gem.mutex); in qxl_gem_object_create() 70 list_add_tail(&qbo->list, &qdev->gem.objects); in qxl_gem_object_create() 71 mutex_unlock(&qdev->gem.mutex); in qxl_gem_object_create() 126 INIT_LIST_HEAD(&qdev->gem.objects); in qxl_gem_init()
|
| /linux/drivers/gpu/drm/i915/ |
| H A D | i915_sysfs.c | 81 spin_lock(&i915->gem.contexts.lock); in i915_l3_read() 86 spin_unlock(&i915->gem.contexts.lock); in i915_l3_read() 114 spin_lock(&i915->gem.contexts.lock); in i915_l3_write() 127 list_for_each_entry(ctx, &i915->gem.contexts.list, link) in i915_l3_write() 130 spin_unlock(&i915->gem.contexts.lock); in i915_l3_write()
|
| /linux/drivers/gpu/drm/msm/ |
| H A D | msm_gem_vma.c | 330 .offset = vma->gem.offset, in msm_gem_vma_map() 354 if (vma->gem.obj) in msm_gem_vma_close() 355 msm_gem_assert_locked(vma->gem.obj); in msm_gem_vma_close() 402 .gem.obj = obj, in msm_gem_vma_new() 403 .gem.offset = offset, in msm_gem_vma_new() 484 return msm_gem_vma_new(arg->job->vm, op->gem.obj, op->gem.offset, in vma_from_op() 493 struct drm_gem_object *obj = op->map.gem.obj; in msm_gem_vm_sm_step_map() 506 vm_dbg("%p:%p:%p: %016llx %016llx", vma->vm, vma, vma->gem.obj, in msm_gem_vm_sm_step_map() 523 .offset = vma->gem.offset, in msm_gem_vm_sm_step_map() 527 .obj = vma->gem.obj, in msm_gem_vm_sm_step_map() [all …]
|
| /linux/drivers/gpu/drm/imagination/ |
| H A D | pvr_fw.h | 34 struct pvr_gem_object *gem; member 438 return pvr_gem_object_vmap(fw_obj->gem); in pvr_fw_object_vmap() 444 pvr_gem_object_vunmap(fw_obj->gem); in pvr_fw_object_vunmap() 471 return pvr_gem_get_dma_addr(fw_obj->gem, offset, dma_addr_out); in pvr_fw_object_get_dma_addr() 488 return pvr_gem_object_size(fw_obj->gem); in pvr_fw_obj_get_object_size()
|
| /linux/drivers/gpu/drm/xe/ |
| H A D | xe_mmio_gem.c | 115 u64 xe_mmio_gem_mmap_offset(struct xe_mmio_gem *gem) in xe_mmio_gem_mmap_offset() argument 117 return drm_vma_node_offset_addr(&gem->base.vma_node); in xe_mmio_gem_mmap_offset() 137 void xe_mmio_gem_destroy(struct xe_mmio_gem *gem) in xe_mmio_gem_destroy() argument 139 xe_mmio_gem_free(&gem->base); in xe_mmio_gem_destroy()
|
| /linux/drivers/gpu/drm/radeon/ |
| H A D | radeon_prime.c | 63 mutex_lock(&rdev->gem.mutex); in radeon_gem_prime_import_sg_table() 64 list_add_tail(&bo->list, &rdev->gem.objects); in radeon_gem_prime_import_sg_table() 65 mutex_unlock(&rdev->gem.mutex); in radeon_gem_prime_import_sg_table()
|