| /optee_os/core/mm/ |
| A D | vm.c | 239 reg->va = va; in umap_add_region() 252 reg->va = va; in umap_add_region() 290 reg->va = *va; in vm_map_pad() 324 *va = reg->va; in vm_map_pad() 342 if (va >= r->va && va < r->va + r->size) in find_vm_region() 380 size_t diff = va - r->va; in split_vm_region() 399 r2->va = va; in split_vm_region() 440 if (va != r->va) { in split_vm_range() 477 if (r->va + r->size < va) in merge_vm_range() 1050 *va = reg->va; in vm_add_rwmem() [all …]
|
| A D | fobj.c | 94 memset(va, 0, SMALL_PAGE_SIZE); in rwp_load_page() 306 const void *va) in rwp_unpaged_iv_save_page() argument 479 void *va) in rop_load_page() argument 487 const void *va __unused) in rop_save_page() 640 void *va) in rrp_load_page() argument 707 void *va) in lop_load_page() argument 713 memset(va, 0, SMALL_PAGE_SIZE); in lop_load_page() 721 const void *va __unused) in lop_save_page() 752 void *va = NULL; in fobj_sec_mem_alloc() local 765 if (!va) in fobj_sec_mem_alloc() [all …]
|
| A D | mobj.c | 39 vaddr_t va; member 52 return (void *)(moph->va + offset); in mobj_phys_get_va() 142 void *va = NULL; in mobj_phys_init() local 160 va = (void *)map->va; in mobj_phys_init() 164 if (!va && battr != CORE_MEM_SDP_MEM) in mobj_phys_init() 177 moph->va = (vaddr_t)va; in mobj_phys_init() 456 vaddr_t va; member 478 return (void *)(m->va + offs); in mobj_seccpy_shm_get_va() 526 vaddr_t va = 0; in mobj_seccpy_shm_alloc() local 549 m->va = va; in mobj_seccpy_shm_alloc() [all …]
|
| /optee_os/core/arch/arm/mm/ |
| A D | core_mmu.c | 215 return (va >= map->va && va <= (map->va + map->size - 1)); in va_is_in_map() 713 return CMP_TRILEAN(mm_a->va, mm_b->va); in cmp_mmap_by_lower_va() 954 map->va = va; in assign_mem_va() 955 if (ADD_OVERFLOW(va, map->size, &va)) in assign_mem_va() 979 if (SUB_OVERFLOW(va, map->size, &va)) in assign_mem_va() 981 va = ROUNDDOWN(va, map->region_size); in assign_mem_va() 992 map->va = va; in assign_mem_va() 1023 if (ADD_OVERFLOW(va, offs, &va)) in assign_mem_va() 1027 map->va = va; in assign_mem_va() 1563 .va = region->va, in set_pg_region() [all …]
|
| A D | tee_pager.c | 451 assert(va >= reg->base && va < (reg->base + reg->size)); in region_va2tblidx() 477 tlbi_mva_allasid(va); in tblidx_tlbi_entry() 488 assert(va >= reg->base && va < (reg->base + reg->size)); in pmem_assign_fobj_page() 663 vaddr_t va) in find_region() argument 848 assert(r2->base == va); in split_region() 879 if (va == reg->base || va == reg->base + reg->size) in tee_pager_split_um_region() 881 if (va > reg->base && va < reg->base + reg->size) { in tee_pager_split_um_region() 1203 assert(va >= reg->base && va < (reg->base + reg->size)); in pmem_find() 1576 asan_tag_access(va, va + SMALL_PAGE_SIZE); in pager_get_page() 1580 asan_tag_no_access(va, va + SMALL_PAGE_SIZE); in pager_get_page() [all …]
|
| /optee_os/core/arch/arm/include/kernel/ |
| A D | tlb_helpers.h | 19 static inline void tlbi_mva_allasid_nosync(vaddr_t va) in tlbi_mva_allasid_nosync() argument 22 tlbi_vaae1is(va >> TLBI_MVA_SHIFT); in tlbi_mva_allasid_nosync() 24 write_tlbimvaais(va); in tlbi_mva_allasid_nosync() 28 static inline void tlbi_mva_asid_nosync(vaddr_t va, uint32_t asid) in tlbi_mva_asid_nosync() argument 33 tlbi_vale1is((va >> TLBI_MVA_SHIFT) | SHIFT_U64(a, TLBI_ASID_SHIFT)); in tlbi_mva_asid_nosync() 34 tlbi_vale1is((va >> TLBI_MVA_SHIFT) | in tlbi_mva_asid_nosync() 37 write_tlbimvais((va & ~(BIT32(TLBI_MVA_SHIFT) - 1)) | a); in tlbi_mva_asid_nosync() 38 write_tlbimvais((va & ~(BIT32(TLBI_MVA_SHIFT) - 1)) | a | 1); in tlbi_mva_asid_nosync() 42 static inline void tlbi_mva_asid(vaddr_t va, uint32_t asid) in tlbi_mva_asid() argument 45 tlbi_mva_asid_nosync(va, asid); in tlbi_mva_asid()
|
| /optee_os/core/include/mm/ |
| A D | vm.h | 29 TEE_Result vm_map_pad(struct user_mode_ctx *uctx, vaddr_t *va, size_t len, 39 static inline TEE_Result vm_map(struct user_mode_ctx *uctx, vaddr_t *va, in vm_map() argument 43 return vm_map_pad(uctx, va, len, prot, flags, mobj, offs, 0, 0, 0); in vm_map() 49 TEE_Result vm_get_flags(struct user_mode_ctx *uctx, vaddr_t va, size_t len, 52 TEE_Result vm_get_prot(struct user_mode_ctx *uctx, vaddr_t va, size_t len, 55 TEE_Result vm_set_prot(struct user_mode_ctx *uctx, vaddr_t va, size_t len, 58 TEE_Result vm_unmap(struct user_mode_ctx *uctx, vaddr_t va, size_t len); 66 vaddr_t *va); 77 const void *va, size_t size); 80 const void *va, size_t size); [all …]
|
| A D | fobj.h | 44 void *va); 46 const void *va); 120 unsigned int page_idx, void *va) in fobj_load_page() argument 123 return fobj->ops->load_page(fobj, page_idx, va); in fobj_load_page() 137 unsigned int page_idx, const void *va) in fobj_save_page() argument 140 return fobj->ops->save_page(fobj, page_idx, va); in fobj_save_page()
|
| /optee_os/core/tee/ |
| A D | tee_fs_rpc.c | 59 void *va = NULL; in operation_open_dfh() local 64 if (!va) in operation_open_dfh() 67 res = create_filename(va, TEE_FS_NAME_MAX, dfh); in operation_open_dfh() 116 uint8_t *va; in tee_fs_rpc_read_init() local 124 if (!va) in tee_fs_rpc_read_init() 135 *out_data = va; in tee_fs_rpc_read_init() 155 uint8_t *va; in tee_fs_rpc_write_init() local 163 if (!va) in tee_fs_rpc_write_init() 174 *data = va; in tee_fs_rpc_write_init() 202 void *va = NULL; in tee_fs_rpc_remove_dfh() local [all …]
|
| A D | socket.c | 25 void *va = NULL; in socket_open() local 37 va = thread_rpc_shm_cache_alloc(THREAD_SHM_CACHE_USER_SOCKET, in socket_open() 40 if (!va) in socket_open() 43 memcpy(va, params[1].memref.buffer, params[1].memref.size); in socket_open() 87 void *va = NULL; in socket_send() local 102 if (!va) in socket_send() 125 void *va = NULL; in socket_recv() local 141 if (!va) in socket_recv() 153 memcpy(params[1].memref.buffer, va, in socket_recv() 166 void *va = NULL; in socket_ioctl() local [all …]
|
| A D | tee_supp_plugin_rpc.c | 25 void *va = NULL; in tee_invoke_supp_plugin_rpc() local 48 va = mobj_get_va(mobj, 0, len); in tee_invoke_supp_plugin_rpc() 49 if (!va) { in tee_invoke_supp_plugin_rpc() 54 memcpy(va, buf, len); in tee_invoke_supp_plugin_rpc() 71 memcpy(buf, va, *outlen <= len ? *outlen : len); in tee_invoke_supp_plugin_rpc()
|
| /optee_os/core/arch/arm/plat-imx/pm/ |
| A D | psci.c | 61 if (!va) in psci_cpu_on() 73 io_write32(va + SRC_GPR1_MX7 + core_idx * 8, val); in psci_cpu_on() 78 val = io_read32(va + SRC_A7RCR1); in psci_cpu_on() 81 io_write32(va + SRC_A7RCR1, val); in psci_cpu_on() 84 io_write32(va + SRC_GPR1 + core_idx * 8, val); in psci_cpu_on() 87 val = io_read32(va + SRC_SCR); in psci_cpu_on() 90 io_write32(va + SRC_SCR, val); in psci_cpu_on() 145 val = io_read32(va + SRC_A7RCR1); in psci_affinity_info() 147 io_write32(va + SRC_A7RCR1, val); in psci_affinity_info() 153 val = io_read32(va + SRC_SCR); in psci_affinity_info() [all …]
|
| /optee_os/core/arch/arm/kernel/ |
| A D | tee_l2cc_mutex.c | 38 void *va; in l2cc_mutex_alloc() local 45 va = phys_to_virt(l2cc_mutex_pa, MEM_AREA_NSEC_SHM, MUTEX_SZ); in l2cc_mutex_alloc() 46 if (!va) in l2cc_mutex_alloc() 49 *(uint32_t *)va = 0; in l2cc_mutex_alloc() 50 l2cc_mutex_va = va; in l2cc_mutex_alloc() 113 void *va; in tee_set_l2cc_mutex() local 118 va = phys_to_virt(addr, MEM_AREA_NSEC_SHM, MUTEX_SZ); in tee_set_l2cc_mutex() 119 if (!va) in tee_set_l2cc_mutex() 122 l2cc_mutex_va = va; in tee_set_l2cc_mutex()
|
| A D | rpc_io_i2c.c | 24 uint8_t *va = NULL; in rpc_io_i2c_transfer() local 31 va = thread_rpc_shm_cache_alloc(THREAD_SHM_CACHE_USER_I2C, in rpc_io_i2c_transfer() 34 if (!va) in rpc_io_i2c_transfer() 38 memcpy(va, req->buffer, req->buffer_len); in rpc_io_i2c_transfer() 59 memcpy(req->buffer, va, *len); in rpc_io_i2c_transfer()
|
| /optee_os/core/kernel/ |
| A D | msg_param.c | 68 uint64_t *va; in msg_param_extract_pages() local 82 va = mobj_get_va(mobj, 0, SMALL_PAGE_SIZE); in msg_param_extract_pages() 83 assert(va); in msg_param_extract_pages() 85 for (cnt = 0; cnt < num_pages; cnt++, va++) { in msg_param_extract_pages() 91 if (!((vaddr_t)(va + 1) & SMALL_PAGE_MASK)) { in msg_param_extract_pages() 92 page = *va; in msg_param_extract_pages() 101 va = mobj_get_va(mobj, 0, SMALL_PAGE_SIZE); in msg_param_extract_pages() 102 assert(va); in msg_param_extract_pages() 104 pages[cnt] = *va; in msg_param_extract_pages()
|
| A D | ldelf_syscalls.c | 75 if (ADD_OVERFLOW(va, sz, &end_va)) in ldelf_syscall_unmap() 78 res = vm_get_flags(uctx, va, sz, &vm_flags); in ldelf_syscall_unmap() 84 return vm_unmap(uctx, va, sz); in ldelf_syscall_unmap() 245 res = binh->op->read(binh->h, (void *)va, rb); in binh_copy_to() 248 memset((uint8_t *)va + rb, 0, num_bytes - rb); in binh_copy_to() 348 res = vm_map_pad(uctx, va, num_rounded_bytes, in ldelf_syscall_map_bin() 374 res = vm_map_pad(uctx, va, num_rounded_bytes, in ldelf_syscall_map_bin() 406 if (vm_unmap(uctx, *va, num_rounded_bytes)) in ldelf_syscall_map_bin() 477 if (ADD_OVERFLOW(va, sz, &end_va)) in ldelf_syscall_set_prot() 480 res = vm_get_flags(uctx, va, sz, &vm_flags); in ldelf_syscall_set_prot() [all …]
|
| /optee_os/core/drivers/ |
| A D | imx_rngb.c | 79 rng->error = io_read32(rng->base.va + RNG_ESR); in wait_for_irq() 80 status = io_read32(rng->base.va + RNG_SR); in wait_for_irq() 90 io_setbits32(rng->base.va + RNG_CR, in irq_clear() 92 io_setbits32(rng->base.va + RNG_CMD, in irq_clear() 98 io_clrbits32(rng->base.va + RNG_CR, in irq_unmask() 110 io_setbits32(rng->base.va + RNG_CR, RNG_CR_AR); in rng_seed() 123 if (!rngb.base.va) in map_controller_static() 163 rngb.base.pa = virt_to_phys((void *)rngb.base.va); in map_controller() 181 status = io_read32(rngb.base.va + RNG_SR); in crypto_rng_read() 186 val = io_read32(rngb.base.va + RNG_OUT); in crypto_rng_read() [all …]
|
| A D | imx_i2c.c | 126 return io_read8(i2c_bus[bid].va + address); in i2c_io_read8() 131 return io_write8(i2c_bus[bid].va + address, data); in i2c_io_write8() 190 vaddr_t addr = i2c_clk.base.va; in i2c_set_bus_speed() 359 if (!i2c_bus[bid].va) in imx_i2c_read() 382 if (!i2c_bus[bid].va) in imx_i2c_write() 400 if (!i2c_bus[bid].va) in imx_i2c_probe() 424 if (!i2c_bus[bid].va) in imx_i2c_init() 448 if (!*va) in get_va() 513 if (get_va(i2c_bus[n].pa, &i2c_bus[n].va)) in i2c_map_controller() 528 if (get_va(i2c_clk.base.pa, &i2c_clk.base.va)) in i2c_init() [all …]
|
| /optee_os/core/arch/arm/plat-zynq7k/ |
| A D | main.c | 101 static void *va; in pl310_base() local 104 if (!va) in pl310_base() 106 return (vaddr_t)va; in pl310_base() 182 static vaddr_t va; in write_slcr() local 184 if (!va) in write_slcr() 185 va = (vaddr_t)phys_to_virt(SLCR_BASE, in write_slcr() 189 io_write32(va + addr, val); in write_slcr() 203 static vaddr_t va; in read_slcr() local 205 if (!va) in read_slcr() 206 va = (vaddr_t)phys_to_virt(SLCR_BASE, in read_slcr() [all …]
|
| /optee_os/core/arch/arm/plat-imx/ |
| A D | imx_src.c | 13 vaddr_t va = core_mmu_get_va(SRC_BASE, MEM_AREA_IO_SEC, 1); in imx_get_src_gpr() local 16 return io_read32(va + SRC_GPR1_MX7 + cpu * 8 + 4); in imx_get_src_gpr() 18 return io_read32(va + SRC_GPR1 + cpu * 8 + 4); in imx_get_src_gpr() 23 vaddr_t va = core_mmu_get_va(SRC_BASE, MEM_AREA_IO_SEC, 1); in imx_set_src_gpr() local 26 io_write32(va + SRC_GPR1_MX7 + cpu * 8 + 4, val); in imx_set_src_gpr() 28 io_write32(va + SRC_GPR1 + cpu * 8 + 4, val); in imx_set_src_gpr()
|
| /optee_os/core/arch/arm/plat-sam/ |
| A D | main.c | 61 static void *va; in sam_sfr_base() local 64 if (!va) in sam_sfr_base() 65 va = phys_to_virt(SFR_BASE, MEM_AREA_IO_SEC, 1); in sam_sfr_base() 66 return (vaddr_t)va; in sam_sfr_base() 78 static void *va; in matrix32_base() local 81 if (!va) in matrix32_base() 82 va = phys_to_virt(AT91C_BASE_MATRIX32, MEM_AREA_IO_SEC, in matrix32_base() 84 return (vaddr_t)va; in matrix32_base() 91 static void *va; in matrix64_base() local 94 if (!va) in matrix64_base() [all …]
|
| /optee_os/ldelf/ |
| A D | sys.c | 39 TEE_Result sys_map_zi(size_t num_bytes, uint32_t flags, vaddr_t *va, in sys_map_zi() argument 42 return _ldelf_map_zi(va, num_bytes, pad_begin, pad_end, flags); in sys_map_zi() 45 TEE_Result sys_unmap(vaddr_t va, size_t num_bytes) in sys_unmap() argument 47 return _ldelf_unmap(va, num_bytes); in sys_unmap() 60 TEE_Result sys_map_ta_bin(vaddr_t *va, size_t num_bytes, uint32_t flags, in sys_map_ta_bin() argument 64 return _ldelf_map_bin(va, num_bytes, handle, offs, in sys_map_ta_bin() 75 TEE_Result sys_set_prot(vaddr_t va, size_t num_bytes, uint32_t flags) in sys_set_prot() argument 77 return _ldelf_set_prot(va, num_bytes, flags); in sys_set_prot()
|
| A D | ta_elf.c | 433 vaddr_t va = 0; in init_elf() local 673 vaddr_t va = 0; in populate_segments_legacy() local 683 va = 0; in populate_segments_legacy() 737 vaddr_t va = 0; in populate_segments() local 808 va = 0; in populate_segments() 888 vaddr_t va = 0; in parse_property_segment() local 1207 vaddr_t va = 0; in ta_elf_load_main() local 1226 ta_stack = va; in ta_elf_load_main() 1424 while (map_idx < num_maps && maps[map_idx].va <= va) { in ta_elf_print_mappings() 1428 if (maps[map_idx].va == va) { in ta_elf_print_mappings() [all …]
|
| /optee_os/core/arch/arm/tee/ |
| A D | cache.c | 18 TEE_Result cache_operation(enum utee_cache_operation op, void *va, size_t len) in cache_operation() argument 23 pa = virt_to_phys(va); in cache_operation() 31 res = cache_op_inner(DCACHE_AREA_CLEAN, va, len); in cache_operation() 38 return cache_op_inner(DCACHE_AREA_CLEAN_INV, va, len); in cache_operation() 42 res = cache_op_inner(DCACHE_AREA_CLEAN, va, len); in cache_operation() 52 return cache_op_inner(DCACHE_AREA_INVALIDATE, va, len); in cache_operation()
|
| /optee_os/core/arch/arm/plat-ti/ |
| A D | ti_pl310.c | 41 static void *va; in pl310_base() local 44 if (!va) in pl310_base() 45 va = phys_to_virt(PL310_BASE, MEM_AREA_IO_SEC, in pl310_base() 47 return (vaddr_t)va; in pl310_base()
|