/linux/drivers/gpu/drm/nouveau/ |
H A D | nouveau_bo.c | 141 struct nouveau_bo *nvbo = nouveau_bo(bo); in nouveau_bo_del_ttm() local 143 WARN_ON(nvbo->bo.pin_count > 0); in nouveau_bo_del_ttm() 145 nv10_bo_put_tile_region(dev, nvbo->tile, NULL); in nouveau_bo_del_ttm() 155 if (nvbo->no_share) in nouveau_bo_del_ttm() 156 drm_gem_object_put(nvbo->r_obj); in nouveau_bo_del_ttm() 163 kfree(nvbo); in nouveau_bo_del_ttm() 175 nouveau_bo_fixup_align(struct nouveau_bo *nvbo, int *align, u64 *size) in nouveau_bo_fixup_align() argument 177 struct nouveau_drm *drm = nouveau_bdev(nvbo->bo.bdev); in nouveau_bo_fixup_align() 181 if (nvbo->mode) { in nouveau_bo_fixup_align() 184 *size = roundup_64(*size, 64 * nvbo->mode); in nouveau_bo_fixup_align() [all …]
|
H A D | nouveau_gem.c | 79 struct nouveau_bo *nvbo = nouveau_gem_object(gem); in nouveau_gem_object_del() local 80 struct nouveau_drm *drm = nouveau_bdev(nvbo->bo.bdev); in nouveau_gem_object_del() 91 drm_prime_gem_destroy(gem, nvbo->bo.sg); in nouveau_gem_object_del() 93 ttm_bo_put(&nvbo->bo); in nouveau_gem_object_del() 103 struct nouveau_bo *nvbo = nouveau_gem_object(gem); in nouveau_gem_object_open() local 104 struct nouveau_drm *drm = nouveau_bdev(nvbo->bo.bdev); in nouveau_gem_object_open() 114 if (nvbo->no_share && uvmm && in nouveau_gem_object_open() 115 drm_gpuvm_resv(&uvmm->base) != nvbo->bo.base.resv) in nouveau_gem_object_open() 118 ret = ttm_bo_reserve(&nvbo->bo, false, false, NULL); in nouveau_gem_object_open() 130 ret = nouveau_vma_new(nvbo, vmm, &vma); in nouveau_gem_object_open() [all …]
|
H A D | nouveau_prime.c | 33 struct nouveau_bo *nvbo = nouveau_gem_object(obj); in nouveau_gem_prime_get_sg_table() local 35 return drm_prime_pages_to_sg(obj->dev, nvbo->bo.ttm->pages, in nouveau_gem_prime_get_sg_table() 36 nvbo->bo.ttm->num_pages); in nouveau_gem_prime_get_sg_table() 45 struct nouveau_bo *nvbo; in nouveau_gem_prime_import_sg_table() local 52 nvbo = nouveau_bo_alloc(&drm->client, &size, &align, in nouveau_gem_prime_import_sg_table() 54 if (IS_ERR(nvbo)) { in nouveau_gem_prime_import_sg_table() 55 obj = ERR_CAST(nvbo); in nouveau_gem_prime_import_sg_table() 59 nvbo->valid_domains = NOUVEAU_GEM_DOMAIN_GART; in nouveau_gem_prime_import_sg_table() 61 nvbo->bo.base.funcs = &nouveau_gem_object_funcs; in nouveau_gem_prime_import_sg_table() 65 ret = drm_gem_object_init(dev, &nvbo->bo.base, size); in nouveau_gem_prime_import_sg_table() [all …]
|
H A D | nouveau_vmm.c | 49 nouveau_vma_find(struct nouveau_bo *nvbo, struct nouveau_vmm *vmm) in nouveau_vma_find() argument 53 list_for_each_entry(vma, &nvbo->vma_list, head) { in nouveau_vma_find() 77 nouveau_vma_new(struct nouveau_bo *nvbo, struct nouveau_vmm *vmm, in nouveau_vma_new() argument 80 struct nouveau_mem *mem = nouveau_mem(nvbo->bo.resource); in nouveau_vma_new() 85 if ((vma = *pvma = nouveau_vma_find(nvbo, vmm))) { in nouveau_vma_new() 97 list_add_tail(&vma->head, &nvbo->vma_list); in nouveau_vma_new() 99 if (nvbo->bo.resource->mem_type != TTM_PL_SYSTEM && in nouveau_vma_new() 100 mem->mem.page == nvbo->page) { in nouveau_vma_new()
|
H A D | nouveau_ttm.c | 69 struct nouveau_bo *nvbo = nouveau_bo(bo); in nouveau_vram_manager_new() local 76 ret = nouveau_mem_new(drm, nvbo->kind, nvbo->comp, res); in nouveau_vram_manager_new() 82 ret = nouveau_mem_vram(*res, nvbo->contig, nvbo->page); in nouveau_vram_manager_new() 104 struct nouveau_bo *nvbo = nouveau_bo(bo); in nouveau_gart_manager_new() local 108 ret = nouveau_mem_new(drm, nvbo->kind, nvbo->comp, res); in nouveau_gart_manager_new() 130 struct nouveau_bo *nvbo = nouveau_bo(bo); in nv04_gart_manager_new() local 135 ret = nouveau_mem_new(drm, nvbo->kind, nvbo->comp, res); in nv04_gart_manager_new()
|
H A D | nouveau_bo.h | 73 int nouveau_bo_pin_locked(struct nouveau_bo *nvbo, uint32_t domain, bool contig); 74 void nouveau_bo_unpin_locked(struct nouveau_bo *nvbo); 87 void nouveau_bo_sync_for_device(struct nouveau_bo *nvbo); 88 void nouveau_bo_sync_for_cpu(struct nouveau_bo *nvbo); 94 nvbo_kmap_obj_iovirtual(struct nouveau_bo *nvbo) in nvbo_kmap_obj_iovirtual() argument 98 &nvbo->kmap, &is_iomem); in nvbo_kmap_obj_iovirtual()
|
H A D | nouveau_display.c | 173 const struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); in nouveau_framebuffer_get_layout() local 175 *tile_mode = nvbo->mode; in nouveau_framebuffer_get_layout() 176 *kind = nvbo->kind; in nouveau_framebuffer_get_layout() 225 nouveau_check_bl_size(struct nouveau_drm *drm, struct nouveau_bo *nvbo, in nouveau_check_bl_size() argument 246 bl_size, nvbo->bo.base.size); in nouveau_check_bl_size() 248 if (bl_size + offset > nvbo->bo.base.size) in nouveau_check_bl_size() 261 struct nouveau_bo *nvbo = nouveau_gem_object(gem); in nouveau_framebuffer_new() local 294 tile_mode = nvbo->mode; in nouveau_framebuffer_new() 295 kind = nvbo->kind; in nouveau_framebuffer_new() 306 ret = nouveau_check_bl_size(drm, nvbo, in nouveau_framebuffer_new() [all …]
|
H A D | nouveau_sgdma.c | 71 struct nouveau_bo *nvbo = nouveau_bo(bo); in nouveau_sgdma_create_ttm() local 75 if (nvbo->force_coherent) in nouveau_sgdma_create_ttm()
|
H A D | nouveau_crtc.h | 57 struct nouveau_bo *nvbo; member
|
H A D | nouveau_uvmm.c | 781 struct nouveau_bo *nvbo = nouveau_gem_object(uvma->va.gem.obj); in op_map() local 783 nouveau_uvma_map(uvma, nouveau_mem(nvbo->bo.resource)); in op_map() 1756 nouveau_uvmm_bo_map_all(struct nouveau_bo *nvbo, struct nouveau_mem *mem) in nouveau_uvmm_bo_map_all() argument 1758 struct drm_gem_object *obj = &nvbo->bo.base; in nouveau_uvmm_bo_map_all() 1775 nouveau_uvmm_bo_unmap_all(struct nouveau_bo *nvbo) in nouveau_uvmm_bo_unmap_all() argument 1777 struct drm_gem_object *obj = &nvbo->bo.base; in nouveau_uvmm_bo_unmap_all() 1804 struct nouveau_bo *nvbo = nouveau_gem_object(vm_bo->obj); in nouveau_uvmm_bo_validate() local 1806 nouveau_bo_placement_set(nvbo, nvbo->valid_domains, 0); in nouveau_uvmm_bo_validate() 1807 return nouveau_bo_validate(nvbo, true, false); in nouveau_uvmm_bo_validate()
|
H A D | nouveau_uvmm.h | 80 void nouveau_uvmm_bo_unmap_all(struct nouveau_bo *nvbo);
|
H A D | nouveau_fence.c | 358 nouveau_fence_sync(struct nouveau_bo *nvbo, struct nouveau_channel *chan, in nouveau_fence_sync() argument 362 struct dma_resv *resv = nvbo->bo.base.resv; in nouveau_fence_sync()
|
/linux/drivers/gpu/drm/nouveau/dispnv04/ |
H A D | disp.c | 80 struct nouveau_bo *nvbo; in nv04_display_fini() local 84 nvbo = nouveau_gem_object(fb->obj[0]); in nv04_display_fini() 85 nouveau_bo_unpin(nvbo); in nv04_display_fini() 90 if (nv_crtc->cursor.nvbo) { in nv04_display_fini() 92 nouveau_bo_unmap(nv_crtc->cursor.nvbo); in nv04_display_fini() 93 nouveau_bo_unpin(nv_crtc->cursor.nvbo); in nv04_display_fini() 132 struct nouveau_bo *nvbo; in nv04_display_init() local 136 nvbo = nouveau_gem_object(fb->obj[0]); in nv04_display_init() 137 ret = nouveau_bo_pin(nvbo, NOUVEAU_GEM_DOMAIN_VRAM, true); in nv04_display_init() 144 if (!nv_crtc->cursor.nvbo) in nv04_display_init() [all …]
|
H A D | overlay.c | 126 struct nouveau_bo *nvbo; in nv10_update_plane() local 144 nvbo = nouveau_gem_object(fb->obj[0]); in nv10_update_plane() 145 ret = nouveau_bo_pin(nvbo, NOUVEAU_GEM_DOMAIN_VRAM, false); in nv10_update_plane() 149 nv_plane->cur = nvbo; in nv10_update_plane() 155 nvif_wr32(dev, NV_PVIDEO_OFFSET_BUFF(flip), nvbo->offset); in nv10_update_plane() 177 nvbo->offset + fb->offsets[1]); in nv10_update_plane() 375 struct nouveau_bo *nvbo; in nv04_update_plane() local 390 nvbo = nouveau_gem_object(fb->obj[0]); in nv04_update_plane() 391 ret = nouveau_bo_pin(nvbo, NOUVEAU_GEM_DOMAIN_VRAM, false); in nv04_update_plane() 395 nv_plane->cur = nvbo; in nv04_update_plane() [all …]
|
H A D | crtc.c | 614 struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); in nv_crtc_swap_fbs() local 618 ret = nouveau_bo_pin(nvbo, NOUVEAU_GEM_DOMAIN_VRAM, false); in nv_crtc_swap_fbs() 627 drm_gem_object_get(&nvbo->bo.base); in nv_crtc_swap_fbs() 628 disp->image[nv_crtc->index] = nvbo; in nv_crtc_swap_fbs() 771 nouveau_bo_unmap(nv_crtc->cursor.nvbo); in nv_crtc_destroy() 772 nouveau_bo_unpin(nv_crtc->cursor.nvbo); in nv_crtc_destroy() 773 nouveau_bo_fini(nv_crtc->cursor.nvbo); in nv_crtc_destroy() 848 struct nouveau_bo *nvbo; in nv04_crtc_do_mode_set_base() local 869 nvbo = nouveau_gem_object(drm_fb->obj[0]); in nv04_crtc_do_mode_set_base() 870 nv_crtc->fb.offset = nvbo->offset; in nv04_crtc_do_mode_set_base() [all …]
|