Home
last modified time | relevance | path

Searched refs:pa (Results 1 – 25 of 112) sorted by relevance

12345

/optee_os/core/mm/
H A Dcore_mmu.c200 paddr_t pa, size_t size) in _pbuf_intersects() argument
205 if (core_is_buffer_intersect(pa, size, a[n].paddr, a[n].size)) in _pbuf_intersects()
210 #define pbuf_intersects(a, pa, size) \ argument
211 _pbuf_intersects((a), ARRAY_SIZE(a), (pa), (size))
214 paddr_t pa, size_t size) in _pbuf_is_inside() argument
219 if (core_is_buffer_inside(pa, size, a[n].paddr, a[n].size)) in _pbuf_is_inside()
224 #define pbuf_is_inside(a, pa, size) \ argument
225 _pbuf_is_inside((a), ARRAY_SIZE(a), (pa), (size))
227 static bool pa_is_in_map(struct tee_mmap_region *map, paddr_t pa, size_t len) in pa_is_in_map() argument
234 if (SUB_OVERFLOW(len, 1, &end_pa) || ADD_OVERFLOW(pa, end_pa, &end_pa)) in pa_is_in_map()
[all …]
H A Dmobj.c37 paddr_t pa; member
53 size_t granule, paddr_t *pa) in mobj_phys_get_pa() argument
58 if (!pa) in mobj_phys_get_pa()
61 p = moph->pa + offs; in mobj_phys_get_pa()
70 *pa = p; in mobj_phys_get_pa()
135 static struct mobj *mobj_phys_init(paddr_t pa, size_t size, uint32_t mem_type, in mobj_phys_init() argument
143 if ((pa & CORE_MMU_USER_PARAM_MASK) || in mobj_phys_init()
149 if (pa) { in mobj_phys_init()
150 va = phys_to_virt(pa, area_type, size); in mobj_phys_init()
156 pa = map->pa; in mobj_phys_init()
[all …]
H A Dmobj_dyn_shm.c52 paddr_t pa; member
82 size_t granule, paddr_t *pa) in mobj_reg_shm_get_pa() argument
88 if (!pa) in mobj_reg_shm_get_pa()
106 *pa = p; in mobj_reg_shm_get_pa()
318 static TEE_Result check_reg_shm_conflict(struct mobj_reg_shm *r, paddr_t pa, in check_reg_shm_conflict() argument
324 if (core_is_buffer_intersect(pa, size, r->pages[n], in check_reg_shm_conflict()
337 res = check_reg_shm_conflict(r, m->pa, m->mobj.size); in check_protmem_conflict()
550 static TEE_Result check_reg_shm_list_conflict(paddr_t pa, paddr_size_t size) in check_reg_shm_list_conflict() argument
556 res = check_reg_shm_conflict(r, pa, size); in check_reg_shm_list_conflict()
566 if ((m->pa | m->mobj.size) & SMALL_PAGE_MASK) in protect_mem()
[all …]
H A Dpage_alloc.c55 paddr_t pa = 0; in virt_page_alloc() local
81 pa = tee_mm_get_smem(mmp); in virt_page_alloc()
82 assert(pa); in virt_page_alloc()
84 res = core_mmu_map_contiguous_pages(va, pa, pcount, memtype); in virt_page_alloc()
H A Dboot_mem.c284 paddr_t pa = 0; in boot_mem_release_unused() local
305 pa = vaddr_to_phys(ROUNDUP(boot_mem_desc->orig_mem_start, in boot_mem_release_unused()
307 mm = nex_phys_mem_mm_find(pa); in boot_mem_release_unused()
317 pa = tee_mm_get_smem(mm); in boot_mem_release_unused()
318 n = vaddr_to_phys(boot_mem_desc->mem_start) - pa; in boot_mem_release_unused()
320 DMSG("Carving out %#"PRIxPA"..%#"PRIxPA, pa, pa + n - 1); in boot_mem_release_unused()
321 mm = nex_phys_mem_alloc2(pa, n); in boot_mem_release_unused()
344 paddr_t pa = 0; in boot_mem_release_tmp_alloc() local
359 pa = vaddr_to_phys(va); in boot_mem_release_tmp_alloc()
361 mm = nex_phys_mem_mm_find(pa); in boot_mem_release_tmp_alloc()
[all …]
/optee_os/core/arch/arm/plat-stm32mp2/
H A Dmain.c71 paddr_t pa; in plat_console_init() member
73 [0] = { .pa = 0 }, in plat_console_init()
74 [1] = { .pa = USART1_BASE }, in plat_console_init()
75 [2] = { .pa = USART2_BASE }, in plat_console_init()
76 [3] = { .pa = USART3_BASE }, in plat_console_init()
77 [4] = { .pa = UART4_BASE }, in plat_console_init()
78 [5] = { .pa = UART5_BASE }, in plat_console_init()
79 [6] = { .pa = USART6_BASE }, in plat_console_init()
80 [7] = { .pa = UART7_BASE }, in plat_console_init()
81 [8] = { .pa = UART8_BASE }, in plat_console_init()
[all …]
/optee_os/core/arch/arm/tee/
H A Dcache.c21 paddr_t pa; in cache_operation() local
23 pa = virt_to_phys(va); in cache_operation()
24 if (!pa) in cache_operation()
34 res = cache_op_outer(DCACHE_AREA_CLEAN_INV, pa, len); in cache_operation()
45 return cache_op_outer(DCACHE_AREA_CLEAN, pa, len); in cache_operation()
49 res = cache_op_outer(DCACHE_AREA_INVALIDATE, pa, len); in cache_operation()
/optee_os/core/arch/arm/plat-stm32mp1/
H A Dmain.c87 paddr_t pa; in plat_console_init() member
89 [0] = { .pa = 0 }, in plat_console_init()
90 [1] = { .pa = USART1_BASE }, in plat_console_init()
91 [2] = { .pa = USART2_BASE }, in plat_console_init()
92 [3] = { .pa = USART3_BASE }, in plat_console_init()
93 [4] = { .pa = UART4_BASE }, in plat_console_init()
94 [5] = { .pa = UART5_BASE }, in plat_console_init()
95 [6] = { .pa = USART6_BASE }, in plat_console_init()
96 [7] = { .pa = UART7_BASE }, in plat_console_init()
97 [8] = { .pa = UART8_BASE }, in plat_console_init()
[all …]
H A Dstm32_util.h97 paddr_t stm32mp1_pa_or_sram_alias_pa(paddr_t pa);
102 static inline paddr_t stm32mp1_pa_or_sram_alias_pa(paddr_t pa) in stm32mp1_pa_or_sram_alias_pa() argument
104 return pa; in stm32mp1_pa_or_sram_alias_pa()
/optee_os/core/lib/libtomcrypt/src/misc/
H A Dmem_neq.c32 const unsigned char* pa; in mem_neq() local
38 pa = a; in mem_neq()
42 ret |= *pa ^ *pb; in mem_neq()
43 ++pa; in mem_neq()
/optee_os/core/arch/arm/mm/
H A Dcore_mmu.c98 TEE_Result cache_op_outer(enum cache_op op, paddr_t pa, size_t len) in cache_op_outer() argument
118 if (tee_pbuf_is_sec(pa, len)) in cache_op_outer()
130 arm_cl2_invbypa(pl310_base_pa_op, pa, pa + len - 1); in cache_op_outer()
137 arm_cl2_cleanbypa(pl310_base_pa_op, pa, pa + len - 1); in cache_op_outer()
144 arm_cl2_cleaninvbypa(pl310_base_pa_op, pa, in cache_op_outer()
145 pa + len - 1); in cache_op_outer()
192 bool arch_va2pa_helper(void *va, paddr_t *pa) in arch_va2pa_helper() argument
219 *pa = (par & (par_pa_mask << PAR_PA_SHIFT)) | in arch_va2pa_helper()
H A Dmobj_ffa.c98 paddr_t pa; member
296 if (core_is_buffer_intersect(prm->pa, prm->mf.mobj.size, in check_shm_overlaps_prm()
325 return core_is_buffer_intersect(to_mobj_ffa_prm(&mf->mobj)->pa, in cmp_pa_overlap()
327 to_mobj_ffa_prm(&mf2->mobj)->pa, in cmp_pa_overlap()
430 paddr_t pa, unsigned int num_pages) in mobj_ffa_add_pages_at() argument
439 !core_pbuf_is(CORE_MEM_NON_SEC, pa, num_pages * SMALL_PAGE_SIZE)) in mobj_ffa_add_pages_at()
446 mfs->pages[n + *idx] = pa + n * SMALL_PAGE_SIZE; in mobj_ffa_add_pages_at()
451 mfr->pa = pa; in mobj_ffa_add_pages_at()
452 else if (mfr->pa != pa + *idx * SMALL_PAGE_SIZE) in mobj_ffa_add_pages_at()
469 m->use_case, m->pa, m->mf.mobj.size, m->mf.cookie); in protect_mem()
[all …]
H A Dcore_mmu_v7.c259 paddr_t pa = virt_to_phys((void *)core_mmu_get_main_ttb_va(prtn)); in core_mmu_get_main_ttb_pa() local
261 if (pa & ~TTB_L1_MASK) in core_mmu_get_main_ttb_pa()
263 return pa; in core_mmu_get_main_ttb_pa()
273 paddr_t pa = virt_to_phys((void *)core_mmu_get_ul1_ttb_va(prtn)); in core_mmu_get_ul1_ttb_pa() local
275 if (pa & ~TTB_UL1_MASK) in core_mmu_get_ul1_ttb_pa()
277 return pa; in core_mmu_get_ul1_ttb_pa()
294 paddr_t pa = 0; in alloc_l2_table() local
301 pa = tee_mm_get_smem(mm); in alloc_l2_table()
303 p = phys_to_virt(pa, MEM_AREA_SEC_RAM_OVERALL, in alloc_l2_table()
609 paddr_t pa, uint32_t attr) in core_mmu_set_entry_primitive() argument
[all …]
H A Dtee_pager.c227 void *tee_pager_phys_to_virt(paddr_t pa, size_t len) in tee_pager_phys_to_virt() argument
236 if (pa & SMALL_PAGE_MASK || len > SMALL_PAGE_SIZE) in tee_pager_phys_to_virt()
242 if (!tee_pager_get_table_info(pa, &ti)) in tee_pager_phys_to_virt()
244 idx = core_mmu_va2idx(&ti, pa); in tee_pager_phys_to_virt()
246 if ((a & TEE_MATTR_VALID_BLOCK) && p == pa) in tee_pager_phys_to_virt()
259 if ((a & TEE_MATTR_VALID_BLOCK) && p == pa) in tee_pager_phys_to_virt()
432 static void tblidx_get_entry(struct tblidx tblidx, paddr_t *pa, uint32_t *attr) in tblidx_get_entry() argument
436 pa, attr); in tblidx_get_entry()
439 static void tblidx_set_entry(struct tblidx tblidx, paddr_t pa, uint32_t attr) in tblidx_set_entry() argument
443 pa, attr); in tblidx_set_entry()
[all …]
/optee_os/core/drivers/remoteproc/
H A Dstm32_remoteproc.c137 paddr_t *pa) in stm32_rproc_da_to_pa() argument
157 *pa = mems[i].addr + da - mems[i].da; in stm32_rproc_da_to_pa()
165 TEE_Result stm32_rproc_map(uint32_t rproc_id, paddr_t pa, size_t size, in stm32_rproc_map() argument
178 if (!core_is_buffer_inside(pa, size, mems[i].addr, in stm32_rproc_map()
181 *va = core_mmu_add_mapping(MEM_AREA_RAM_NSEC, pa, size); in stm32_rproc_map()
183 EMSG("Can't map region %#"PRIxPA" size %zu", pa, size); in stm32_rproc_map()
197 paddr_t pa = virt_to_phys(va); in stm32_rproc_unmap() local
200 if (!rproc || !pa) in stm32_rproc_unmap()
206 if (!core_is_buffer_inside(pa, size, mems[i].addr, in stm32_rproc_unmap()
215 pa, size); in stm32_rproc_unmap()
[all …]
/optee_os/core/include/mm/
H A Dmobj.h36 paddr_t *pa);
69 size_t granule, paddr_t *pa) in mobj_get_pa() argument
72 return mobj->ops->get_pa(mobj, offs, granule, pa); in mobj_get_pa()
234 struct mobj *mobj_phys_alloc(paddr_t pa, size_t size, uint32_t cattr,
258 paddr_t pa, unsigned int num_pages);
264 struct mobj *mobj_ffa_protmem_get_by_pa(paddr_t pa, paddr_size_t size);
305 struct mobj *mobj_protmem_alloc(paddr_t pa, paddr_size_t size, uint64_t cookie,
308 struct mobj *mobj_protmem_get_by_pa(paddr_t pa, paddr_size_t size);
330 mobj_protmem_alloc(paddr_t pa __unused, paddr_size_t size __unused, in mobj_protmem_alloc()
343 static inline struct mobj *mobj_protmem_get_by_pa(paddr_t pa __unused, in mobj_protmem_get_by_pa()
[all …]
H A Dcore_memprot.h76 void *phys_to_virt(paddr_t pa, enum teecore_memtypes m, size_t len);
84 void *phys_to_virt_io(paddr_t pa, size_t len);
102 vaddr_t core_mmu_get_va(paddr_t pa, enum teecore_memtypes type, size_t len);
131 paddr_t pa; member
H A Dcore_mmu.h444 paddr_t pa, uint32_t attr);
456 paddr_t pa, uint32_t attr);
459 paddr_t *pa, uint32_t *attr);
469 paddr_t *pa, uint32_t *attr);
506 struct core_mmu_table_info *tbl_info, paddr_t pa) in core_mmu_get_block_offset() argument
508 return pa & ((1 << tbl_info->shift) - 1); in core_mmu_get_block_offset()
594 enum teecore_memtypes core_mmu_get_type_by_pa(paddr_t pa);
687 bool arch_va2pa_helper(void *va, paddr_t *pa);
692 static inline bool core_mmu_check_end_pa(paddr_t pa, size_t len) in core_mmu_check_end_pa() argument
696 if (ADD_OVERFLOW(pa, len - 1, &end_pa)) in core_mmu_check_end_pa()
/optee_os/core/drivers/qcom/prng/
H A Dprng.c19 paddr_t pa; member
22 .pa = SEC_PRNG_REG_BASE,
55 if (!core_mmu_add_mapping(MEM_AREA_IO_SEC, prng.pa, SEC_PRNG_REG_SIZE)) in qcom_prng_init()
58 prng.va = (vaddr_t)phys_to_virt_io(prng.pa, SEC_PRNG_REG_SIZE); in qcom_prng_init()
/optee_os/core/drivers/
H A Dimx_i2c.c58 [0] = { .pa = I2C1_BASE, },
61 [1] = { .pa = I2C2_BASE, },
64 [2] = { .pa = I2C3_BASE, },
67 [3] = { .pa = I2C4_BASE, },
75 [0] = { .pa = I2C1_BASE, },
78 [1] = { .pa = I2C2_BASE, },
81 [2] = { .pa = I2C3_BASE, },
84 [3] = { .pa = I2C4_BASE, },
87 [4] = { .pa = I2C5_BASE, },
90 [5] = { .pa = I2C6_BASE, },
[all …]
/optee_os/core/kernel/
H A Duser_mode_ctx.c17 paddr_t pa = 0; in user_mode_ctx_print_mappings() local
20 mobj_get_pa(r->mobj, r->offset, 0, &pa); in user_mode_ctx_print_mappings()
25 n, PRIxVA_WIDTH, r->va, PRIxPA_WIDTH, pa, r->size, in user_mode_ctx_print_mappings()
H A Dtransfer_list.c27 static paddr_t get_align_base_addr(paddr_t pa, in get_align_base_addr() argument
32 paddr_t new_addr = (pa & ~align_mask) + align_off; in get_align_base_addr()
34 if (new_addr < pa) in get_align_base_addr()
46 struct transfer_list_header *transfer_list_map(paddr_t pa) in transfer_list_map() argument
53 tl = core_mmu_add_mapping(MEM_AREA_TRANSFER_LIST, pa, sz); in transfer_list_map()
56 pa, sz); in transfer_list_map()
126 struct transfer_list_header *transfer_list_init(paddr_t pa, size_t max_size) in transfer_list_init() argument
131 if (!pa || !max_size) in transfer_list_init()
134 if (!IS_ALIGNED(pa, align) || !IS_ALIGNED(max_size, align) || in transfer_list_init()
138 tl = core_mmu_add_mapping(MEM_AREA_TRANSFER_LIST, pa, max_size); in transfer_list_init()
[all …]
/optee_os/core/pta/stm32mp/
H A Dremoteproc_pta.c79 paddr_t pa = 0; in rproc_pta_load_segment() local
97 res = stm32_rproc_da_to_pa(params[0].value.a, da, size, &pa); in rproc_pta_load_segment()
101 if (stm32_rproc_map(params[0].value.a, pa, size, &dst)) { in rproc_pta_load_segment()
102 EMSG("Can't map region %#"PRIxPA" size %zu", pa, size); in rproc_pta_load_segment()
127 paddr_t pa = 0; in rproc_pta_set_memory() local
140 res = stm32_rproc_da_to_pa(params[0].value.a, da, size, &pa); in rproc_pta_set_memory()
144 res = stm32_rproc_map(params[0].value.a, pa, size, &dst); in rproc_pta_set_memory()
146 EMSG("Can't map region %#"PRIxPA" size %zu", pa, size); in rproc_pta_set_memory()
165 paddr_t pa = 0; in rproc_pta_da_to_pa() local
176 res = stm32_rproc_da_to_pa(params[0].value.a, da, size, &pa); in rproc_pta_da_to_pa()
[all …]
/optee_os/core/arch/arm/include/mm/
H A Dcore_mmu_arch.h153 TEE_Result cache_op_outer(enum cache_op op, paddr_t pa, size_t len);
156 paddr_t pa __unused, in cache_op_outer()
168 static inline bool core_mmu_check_max_pa(paddr_t pa __maybe_unused) in core_mmu_check_max_pa()
171 return pa <= (BIT64(core_mmu_arm64_get_pa_width()) - 1); in core_mmu_check_max_pa()
173 return pa <= (BIT64(40) - 1); in core_mmu_check_max_pa()
/optee_os/lib/libutils/isoc/
H A Dqsort.c78 char *pa, *pb, *pc, *pd, *pl, *pm, *pn; in qsort() local
103 pa = pb = (char *)a + es; in qsort()
110 swap(pa, pb); in qsort()
111 pa += es; in qsort()
138 r = min(pa - (char *)a, pb - pa); in qsort()
142 if ((r = pb - pa) > (int)es) in qsort()

12345