Lines Matching refs:rwp
144 struct fobj_rwp_paged_iv *rwp = NULL; in rwp_paged_iv_alloc() local
150 rwp = calloc(1, sizeof(*rwp)); in rwp_paged_iv_alloc()
151 if (!rwp) in rwp_paged_iv_alloc()
159 rwp->idx = (tee_mm_get_smem(mm) - nex_phys_mem_get_ta_base()) / in rwp_paged_iv_alloc()
162 memset(idx_to_state_padded(rwp->idx), 0, in rwp_paged_iv_alloc()
165 fobj_init(&rwp->fobj, &ops_rwp_paged_iv, num_pages); in rwp_paged_iv_alloc()
167 return &rwp->fobj; in rwp_paged_iv_alloc()
170 free(rwp); in rwp_paged_iv_alloc()
185 struct fobj_rwp_paged_iv *rwp = to_rwp_paged_iv(fobj); in rwp_paged_iv_load_page() local
186 uint8_t *src = idx_to_store(rwp->idx) + page_idx * SMALL_PAGE_SIZE; in rwp_paged_iv_load_page()
187 struct rwp_state_padded *st = idx_to_state_padded(rwp->idx + page_idx); in rwp_paged_iv_load_page()
199 struct fobj_rwp_paged_iv *rwp = to_rwp_paged_iv(fobj); in rwp_paged_iv_save_page() local
200 uint8_t *dst = idx_to_store(rwp->idx) + page_idx * SMALL_PAGE_SIZE; in rwp_paged_iv_save_page()
201 struct rwp_state_padded *st = idx_to_state_padded(rwp->idx + page_idx); in rwp_paged_iv_save_page()
220 struct fobj_rwp_paged_iv *rwp = to_rwp_paged_iv(fobj); in rwp_paged_iv_free() local
221 paddr_t pa = rwp->idx * SMALL_PAGE_SIZE + nex_phys_mem_get_ta_base(); in rwp_paged_iv_free()
228 free(rwp); in rwp_paged_iv_free()
234 struct fobj_rwp_paged_iv *rwp = to_rwp_paged_iv(fobj); in rwp_paged_iv_get_iv_vaddr() local
235 struct rwp_state_padded *st = idx_to_state_padded(rwp->idx + page_idx); in rwp_paged_iv_get_iv_vaddr()
256 struct fobj_rwp_unpaged_iv *rwp = NULL; in rwp_unpaged_iv_alloc() local
260 rwp = calloc(1, sizeof(*rwp)); in rwp_unpaged_iv_alloc()
261 if (!rwp) in rwp_unpaged_iv_alloc()
264 rwp->state = calloc(num_pages, sizeof(*rwp->state)); in rwp_unpaged_iv_alloc()
265 if (!rwp->state) in rwp_unpaged_iv_alloc()
273 rwp->store = phys_to_virt(tee_mm_get_smem(mm), in rwp_unpaged_iv_alloc()
275 assert(rwp->store); in rwp_unpaged_iv_alloc()
277 fobj_init(&rwp->fobj, &ops_rwp_unpaged_iv, num_pages); in rwp_unpaged_iv_alloc()
279 return &rwp->fobj; in rwp_unpaged_iv_alloc()
282 free(rwp->state); in rwp_unpaged_iv_alloc()
284 free(rwp); in rwp_unpaged_iv_alloc()
298 struct fobj_rwp_unpaged_iv *rwp = to_rwp_unpaged_iv(fobj); in rwp_unpaged_iv_load_page() local
299 uint8_t *src = rwp->store + page_idx * SMALL_PAGE_SIZE; in rwp_unpaged_iv_load_page()
304 return rwp_load_page(va, rwp->state + page_idx, src); in rwp_unpaged_iv_load_page()
312 struct fobj_rwp_unpaged_iv *rwp = to_rwp_unpaged_iv(fobj); in rwp_unpaged_iv_save_page() local
313 uint8_t *dst = rwp->store + page_idx * SMALL_PAGE_SIZE; in rwp_unpaged_iv_save_page()
326 return rwp_save_page(va, rwp->state + page_idx, dst); in rwp_unpaged_iv_save_page()
332 struct fobj_rwp_unpaged_iv *rwp = NULL; in rwp_unpaged_iv_free() local
338 rwp = to_rwp_unpaged_iv(fobj); in rwp_unpaged_iv_free()
339 mm = nex_phys_mem_mm_find(virt_to_phys(rwp->store)); in rwp_unpaged_iv_free()
345 free(rwp->state); in rwp_unpaged_iv_free()
346 free(rwp); in rwp_unpaged_iv_free()