Home
last modified time | relevance | path

Searched refs:abo (Results 1 – 15 of 15) sorted by relevance

/linux/drivers/accel/amdxdna/
H A Damdxdna_gem.c99 amdxdna_gem_heap_alloc(struct amdxdna_gem_obj *abo) in amdxdna_gem_heap_alloc() argument
101 struct amdxdna_client *client = abo->client; in amdxdna_gem_heap_alloc()
103 struct amdxdna_mem *mem = &abo->mem; in amdxdna_gem_heap_alloc()
120 &abo->mm_node, in amdxdna_gem_heap_alloc()
128 ret = amdxdna_init_dev_bo(abo); in amdxdna_gem_heap_alloc()
130 drm_mm_remove_node(&abo->mm_node); in amdxdna_gem_heap_alloc()
136 abo->heap_start_id, abo->heap_end_id) in amdxdna_gem_heap_alloc()
146 amdxdna_gem_heap_free(struct amdxdna_gem_obj *abo) in amdxdna_gem_heap_free() argument
148 struct amdxdna_client *client = abo->client; in amdxdna_gem_heap_free()
154 drm_mm_remove_node(&abo->mm_node); in amdxdna_gem_heap_free()
[all …]
H A Damdxdna_gem.h18 struct amdxdna_gem_obj *abo; member
72 static inline void amdxdna_gem_put_obj(struct amdxdna_gem_obj *abo) in amdxdna_gem_put_obj() argument
74 drm_gem_object_put(to_gobj(abo)); in amdxdna_gem_put_obj()
81 static inline u64 amdxdna_gem_uva(struct amdxdna_gem_obj *abo) in amdxdna_gem_uva() argument
83 return abo->mem.uva; in amdxdna_gem_uva()
86 void *amdxdna_gem_vmap(struct amdxdna_gem_obj *abo);
87 u64 amdxdna_gem_dev_addr(struct amdxdna_gem_obj *abo);
89 static inline u64 amdxdna_dev_bo_offset(struct amdxdna_gem_obj *abo) in amdxdna_dev_bo_offset() argument
91 return amdxdna_gem_dev_addr(abo) - to_xdna_dev(to_gobj(abo)->dev)->dev_info->dev_mem_base; in amdxdna_dev_bo_offset()
94 static inline u64 amdxdna_obj_dma_addr(struct amdxdna_gem_obj *abo) in amdxdna_obj_dma_addr() argument
[all …]
H A Damdxdna_iommu.c39 int amdxdna_dma_map_bo(struct amdxdna_dev *xdna, struct amdxdna_gem_obj *abo) in amdxdna_dma_map_bo() argument
47 if (abo->type != AMDXDNA_BO_DEV_HEAP && abo->type != AMDXDNA_BO_SHARE) in amdxdna_dma_map_bo()
50 sgt = drm_gem_shmem_get_pages_sgt(&abo->base); in amdxdna_dma_map_bo()
67 iova = amdxdna_iommu_alloc_iova(xdna, abo->mem.size, &dma_addr, in amdxdna_dma_map_bo()
68 (abo->type == AMDXDNA_BO_DEV_HEAP)); in amdxdna_dma_map_bo()
81 if (size < abo->mem.size) { in amdxdna_dma_map_bo()
86 abo->mem.dma_addr = dma_addr; in amdxdna_dma_map_bo()
90 if (contig_sz < abo->mem.size) { in amdxdna_dma_map_bo()
93 contig_sz, abo->mem.size); in amdxdna_dma_map_bo()
96 abo->mem.dma_addr = sg_dma_address(sgt->sgl); in amdxdna_dma_map_bo()
[all …]
H A Damdxdna_ctx.c115 void *amdxdna_cmd_get_payload(struct amdxdna_gem_obj *abo, u32 *size) in amdxdna_cmd_get_payload() argument
117 struct amdxdna_cmd *cmd = amdxdna_gem_vmap(abo); in amdxdna_cmd_get_payload()
123 if (amdxdna_cmd_get_op(abo) == ERT_CMD_CHAIN) in amdxdna_cmd_get_payload()
133 abo->mem.size)) { in amdxdna_cmd_get_payload()
142 u32 amdxdna_cmd_get_cu_idx(struct amdxdna_gem_obj *abo) in amdxdna_cmd_get_cu_idx() argument
144 struct amdxdna_cmd *cmd = amdxdna_gem_vmap(abo); in amdxdna_cmd_get_cu_idx()
151 if (amdxdna_cmd_get_op(abo) == ERT_CMD_CHAIN) in amdxdna_cmd_get_cu_idx()
164 int amdxdna_cmd_set_error(struct amdxdna_gem_obj *abo, in amdxdna_cmd_set_error() argument
170 struct amdxdna_cmd *cmd = amdxdna_gem_vmap(abo); in amdxdna_cmd_set_error()
179 if (amdxdna_cmd_get_op(abo) == ERT_CMD_CHAIN) { in amdxdna_cmd_set_error()
[all …]
H A Damdxdna_ctx.h165 amdxdna_cmd_get_op(struct amdxdna_gem_obj *abo) in amdxdna_cmd_get_op() argument
167 struct amdxdna_cmd *cmd = amdxdna_gem_vmap(abo); in amdxdna_cmd_get_op()
176 amdxdna_cmd_set_state(struct amdxdna_gem_obj *abo, enum ert_cmd_state s) in amdxdna_cmd_set_state() argument
178 struct amdxdna_cmd *cmd = amdxdna_gem_vmap(abo); in amdxdna_cmd_set_state()
188 amdxdna_cmd_get_state(struct amdxdna_gem_obj *abo) in amdxdna_cmd_get_state() argument
190 struct amdxdna_cmd *cmd = amdxdna_gem_vmap(abo); in amdxdna_cmd_get_state()
198 void *amdxdna_cmd_get_payload(struct amdxdna_gem_obj *abo, u32 *size);
199 u32 amdxdna_cmd_get_cu_idx(struct amdxdna_gem_obj *abo);
200 int amdxdna_cmd_set_error(struct amdxdna_gem_obj *abo,
H A Daie2_message.c500 struct amdxdna_gem_obj *abo; in aie2_config_cu() local
525 abo = to_xdna_obj(gobj); in aie2_config_cu()
527 if (abo->type != AMDXDNA_BO_DEV) { in aie2_config_cu()
534 amdxdna_gem_dev_addr(abo) >> shift); in aie2_config_cu()
537 amdxdna_gem_dev_addr(abo), req.cfgs[i]); in aie2_config_cu()
1005 struct amdxdna_gem_obj *abo; in aie2_cmdlist_multi_execbuf() local
1007 abo = amdxdna_gem_get_obj(client, boh, AMDXDNA_BO_SHARE); in aie2_cmdlist_multi_execbuf()
1008 if (!abo) { in aie2_cmdlist_multi_execbuf()
1014 ret = aie2_cmdlist_fill_slot(cmd_buf + offset, abo, &size, &op); in aie2_cmdlist_multi_execbuf()
1015 amdxdna_gem_put_obj(abo); in aie2_cmdlist_multi_execbuf()
[all …]
H A Damdxdna_pci_drv.h66 void (*hmm_invalidate)(struct amdxdna_gem_obj *abo, unsigned long cur_seq);
193 int amdxdna_dma_map_bo(struct amdxdna_dev *xdna, struct amdxdna_gem_obj *abo);
194 void amdxdna_dma_unmap_bo(struct amdxdna_dev *xdna, struct amdxdna_gem_obj *abo);
H A Daie2_pci.h302 void aie2_hmm_invalidate(struct amdxdna_gem_obj *abo, unsigned long cur_seq);
/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_dev_coredump.c219 struct amdgpu_bo *abo; in amdgpu_devcoredump_print_ibs() local
266 abo = mapping->bo_va->base.bo; in amdgpu_devcoredump_print_ibs()
267 r = drm_exec_lock_obj(&exec, &abo->tbo.base); in amdgpu_devcoredump_print_ibs()
288 abo = mapping->bo_va->base.bo; in amdgpu_devcoredump_print_ibs()
291 if (abo->flags & AMDGPU_GEM_CREATE_NO_CPU_ACCESS) { in amdgpu_devcoredump_print_ibs()
296 if (abo->tbo.resource->mem_type != TTM_PL_VRAM) in amdgpu_devcoredump_print_ibs()
299 amdgpu_res_first(abo->tbo.resource, offset, in amdgpu_devcoredump_print_ibs()
310 r = ttm_bo_kmap(&abo->tbo, 0, PFN_UP(abo->tbo.base.size), in amdgpu_devcoredump_print_ibs()
311 &abo->kmap); in amdgpu_devcoredump_print_ibs()
315 kptr = amdgpu_bo_kptr(abo); in amdgpu_devcoredump_print_ibs()
[all …]
H A Damdgpu_gem.c233 struct amdgpu_bo *abo = gem_to_amdgpu_bo(obj); in amdgpu_gem_object_open() local
234 struct amdgpu_device *adev = amdgpu_ttm_adev(abo->tbo.bdev); in amdgpu_gem_object_open()
242 mm = amdgpu_ttm_tt_get_usermm(abo->tbo.ttm); in amdgpu_gem_object_open()
246 if (abo->flags & AMDGPU_GEM_CREATE_VM_ALWAYS_VALID && in amdgpu_gem_object_open()
247 !amdgpu_vm_is_bo_always_valid(vm, abo)) in amdgpu_gem_object_open()
252 r = drm_exec_prepare_obj(&exec, &abo->tbo.base, TTM_NUM_MOVE_FENCES + 1); in amdgpu_gem_object_open()
263 amdgpu_vm_bo_update_shared(abo); in amdgpu_gem_object_open()
264 bo_va = amdgpu_vm_bo_find(vm, abo); in amdgpu_gem_object_open()
266 bo_va = amdgpu_vm_bo_add(adev, vm, abo); in amdgpu_gem_object_open()
267 r = amdgpu_evf_mgr_attach_fence(&fpriv->evf_mgr, abo); in amdgpu_gem_object_open()
[all …]
H A Damdgpu_ttm.c98 struct amdgpu_bo *abo; in amdgpu_evict_flags() local
119 abo = ttm_to_amdgpu_bo(bo); in amdgpu_evict_flags()
120 if (abo->flags & AMDGPU_GEM_CREATE_DISCARDABLE) { in amdgpu_evict_flags()
137 amdgpu_bo_placement_from_domain(abo, AMDGPU_GEM_DOMAIN_CPU); in amdgpu_evict_flags()
140 !(abo->flags & AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED) && in amdgpu_evict_flags()
148 amdgpu_bo_placement_from_domain(abo, AMDGPU_GEM_DOMAIN_VRAM | in amdgpu_evict_flags()
151 abo->placements[0].fpfn = adev->gmc.visible_vram_size >> PAGE_SHIFT; in amdgpu_evict_flags()
152 abo->placements[0].lpfn = 0; in amdgpu_evict_flags()
153 abo->placements[0].flags |= TTM_PL_FLAG_DESIRED; in amdgpu_evict_flags()
156 amdgpu_bo_placement_from_domain(abo, AMDGPU_GEM_DOMAIN_GTT | in amdgpu_evict_flags()
[all …]
H A Damdgpu_uvd.c138 static void amdgpu_uvd_force_into_vcpu_segment(struct amdgpu_bo *abo);
571 static void amdgpu_uvd_force_into_uvd_segment(struct amdgpu_bo *abo) in amdgpu_uvd_force_into_uvd_segment() argument
575 for (i = 0; i < abo->placement.num_placement; ++i) { in amdgpu_uvd_force_into_uvd_segment()
576 abo->placements[i].fpfn = 0 >> PAGE_SHIFT; in amdgpu_uvd_force_into_uvd_segment()
577 abo->placements[i].lpfn = (256 * 1024 * 1024) >> PAGE_SHIFT; in amdgpu_uvd_force_into_uvd_segment()
578 if (abo->placements[i].mem_type == TTM_PL_VRAM) in amdgpu_uvd_force_into_uvd_segment()
579 abo->placements[i].flags |= TTM_PL_FLAG_CONTIGUOUS; in amdgpu_uvd_force_into_uvd_segment()
H A Damdgpu_vm.c1326 struct amdgpu_bo *abo = gem_to_amdgpu_bo(gobj); in amdgpu_vm_bo_update() local
1328 if (abo->tbo.resource && in amdgpu_vm_bo_update()
1329 abo->tbo.resource->mem_type == TTM_PL_VRAM) in amdgpu_vm_bo_update()
/linux/scripts/
H A Dextract-ikconfig19 if pos=`tr "$cf1\n$cf2" "\n$cf2=" < "$1" | grep -abo "^$cf2"`
33 for pos in `tr "$1\n$2" "\n$2=" < "$img" | grep -abo "^$2"`
/linux/drivers/gpu/drm/amd/display/amdgpu_dm/
H A Damdgpu_dm.c3607 struct amdgpu_bo *abo = gem_to_amdgpu_bo(fb->obj[0]); in get_mem_type() local
3609 return abo->tbo.resource ? abo->tbo.resource->mem_type : 0; in get_mem_type()