/openbmc/linux/drivers/tee/ |
H A D | tee_shm.c | 44 static void release_registered_pages(struct tee_shm *shm) in release_registered_pages() argument 46 if (shm->pages) { in release_registered_pages() 47 if (shm->flags & TEE_SHM_USER_MAPPED) in release_registered_pages() 48 unpin_user_pages(shm->pages, shm->num_pages); in release_registered_pages() 50 shm_put_kernel_pages(shm->pages, shm->num_pages); in release_registered_pages() 52 kfree(shm->pages); in release_registered_pages() 56 static void tee_shm_release(struct tee_device *teedev, struct tee_shm *shm) in tee_shm_release() argument 58 if (shm->flags & TEE_SHM_POOL) { in tee_shm_release() 59 teedev->pool->ops->free(teedev->pool, shm); in tee_shm_release() 60 } else if (shm->flags & TEE_SHM_DYNAMIC) { in tee_shm_release() [all …]
|
H A D | tee_shm_pool.c | 12 static int pool_op_gen_alloc(struct tee_shm_pool *pool, struct tee_shm *shm, in pool_op_gen_alloc() argument 26 shm->kaddr = (void *)va; in pool_op_gen_alloc() 27 shm->paddr = gen_pool_virt_to_phys(genpool, va); in pool_op_gen_alloc() 28 shm->size = s; in pool_op_gen_alloc() 33 shm->flags &= ~TEE_SHM_DYNAMIC; in pool_op_gen_alloc() 37 static void pool_op_gen_free(struct tee_shm_pool *pool, struct tee_shm *shm) in pool_op_gen_free() argument 39 gen_pool_free(pool->private_data, (unsigned long)shm->kaddr, in pool_op_gen_free() 40 shm->size); in pool_op_gen_free() 41 shm->kaddr = NULL; in pool_op_gen_free()
|
H A D | tee_core.c | 291 struct tee_shm *shm; in tee_ioctl_shm_alloc() local 300 shm = tee_shm_alloc_user_buf(ctx, data.size); in tee_ioctl_shm_alloc() 301 if (IS_ERR(shm)) in tee_ioctl_shm_alloc() 302 return PTR_ERR(shm); in tee_ioctl_shm_alloc() 304 data.id = shm->id; in tee_ioctl_shm_alloc() 305 data.size = shm->size; in tee_ioctl_shm_alloc() 310 ret = tee_shm_get_fd(shm); in tee_ioctl_shm_alloc() 317 tee_shm_put(shm); in tee_ioctl_shm_alloc() 327 struct tee_shm *shm; in tee_ioctl_shm_register() local 336 shm = tee_shm_register_user_buf(ctx, data.addr, data.length); in tee_ioctl_shm_register() [all …]
|
/openbmc/u-boot/drivers/tee/ |
H A D | tee-uclass.c | 52 struct tee_shm *shm; in __tee_shm_add() local 65 shm = calloc(1, sizeof(*shm)); in __tee_shm_add() 66 if (!shm) { in __tee_shm_add() 71 shm->dev = dev; in __tee_shm_add() 72 shm->addr = p; in __tee_shm_add() 73 shm->size = size; in __tee_shm_add() 74 shm->flags = flags; in __tee_shm_add() 77 rc = tee_get_ops(dev)->shm_register(dev, shm); in __tee_shm_add() 85 list_add(&shm->link, &priv->list_shm); in __tee_shm_add() 88 *shmp = shm; in __tee_shm_add() [all …]
|
/openbmc/linux/include/linux/ |
H A D | tee_drv.h | 63 struct tee_shm *shm; member 111 int (*shm_register)(struct tee_context *ctx, struct tee_shm *shm, 114 int (*shm_unregister)(struct tee_context *ctx, struct tee_shm *shm); 237 int (*alloc)(struct tee_shm_pool *pool, struct tee_shm *shm, 239 void (*free)(struct tee_shm_pool *pool, struct tee_shm *shm); 284 static inline bool tee_shm_is_dynamic(struct tee_shm *shm) in tee_shm_is_dynamic() argument 286 return shm && (shm->flags & TEE_SHM_DYNAMIC); in tee_shm_is_dynamic() 293 void tee_shm_free(struct tee_shm *shm); 299 void tee_shm_put(struct tee_shm *shm); 308 void *tee_shm_get_va(struct tee_shm *shm, size_t offs); [all …]
|
/openbmc/linux/drivers/tee/amdtee/ |
H A D | shm_pool.c | 11 static int pool_op_alloc(struct tee_shm_pool *pool, struct tee_shm *shm, in pool_op_alloc() argument 26 shm->kaddr = (void *)va; in pool_op_alloc() 27 shm->paddr = __psp_pa((void *)va); in pool_op_alloc() 28 shm->size = PAGE_SIZE << order; in pool_op_alloc() 31 rc = amdtee_map_shmem(shm); in pool_op_alloc() 34 shm->kaddr = NULL; in pool_op_alloc() 41 static void pool_op_free(struct tee_shm_pool *pool, struct tee_shm *shm) in pool_op_free() argument 44 amdtee_unmap_shmem(shm); in pool_op_free() 45 free_pages((unsigned long)shm->kaddr, get_order(shm->size)); in pool_op_free() 46 shm->kaddr = NULL; in pool_op_free()
|
H A D | core.c | 153 u32 get_buffer_id(struct tee_shm *shm) in get_buffer_id() argument 155 struct amdtee_context_data *ctxdata = shm->ctx->data; in get_buffer_id() 161 if (shmdata->kaddr == shm->kaddr) { in get_buffer_id() 341 int amdtee_map_shmem(struct tee_shm *shm) in amdtee_map_shmem() argument 349 if (!shm) in amdtee_map_shmem() 357 shmem.kaddr = shm->kaddr; in amdtee_map_shmem() 358 shmem.size = shm->size; in amdtee_map_shmem() 371 shmnode->kaddr = shm->kaddr; in amdtee_map_shmem() 373 ctxdata = shm->ctx->data; in amdtee_map_shmem() 383 void amdtee_unmap_shmem(struct tee_shm *shm) in amdtee_unmap_shmem() argument [all …]
|
/openbmc/linux/drivers/tee/optee/ |
H A D | ffa_abi.c | 41 struct tee_shm *shm; member 61 struct tee_shm *shm = NULL; in optee_shm_from_ffa_handle() local 68 shm = r->shm; in optee_shm_from_ffa_handle() 71 return shm; in optee_shm_from_ffa_handle() 74 static int optee_shm_add_ffa_handle(struct optee *optee, struct tee_shm *shm, in optee_shm_add_ffa_handle() argument 83 r->shm = shm; in optee_shm_add_ffa_handle() 126 struct tee_shm *shm = NULL; in from_msg_param_ffa_mem() local 135 shm = optee_shm_from_ffa_handle(optee, mp->u.fmem.global_id); in from_msg_param_ffa_mem() 136 p->u.memref.shm = shm; in from_msg_param_ffa_mem() 138 if (shm) { in from_msg_param_ffa_mem() [all …]
|
H A D | smc_abi.c | 85 struct tee_shm *shm; in from_msg_param_tmp_mem() local 92 shm = (struct tee_shm *)(unsigned long)mp->u.tmem.shm_ref; in from_msg_param_tmp_mem() 93 if (!shm) { in from_msg_param_tmp_mem() 95 p->u.memref.shm = NULL; in from_msg_param_tmp_mem() 99 rc = tee_shm_get_pa(shm, 0, &pa); in from_msg_param_tmp_mem() 104 p->u.memref.shm = shm; in from_msg_param_tmp_mem() 112 struct tee_shm *shm; in from_msg_param_reg_mem() local 117 shm = (struct tee_shm *)(unsigned long)mp->u.rmem.shm_ref; in from_msg_param_reg_mem() 119 if (shm) { in from_msg_param_reg_mem() 121 p->u.memref.shm = shm; in from_msg_param_reg_mem() [all …]
|
H A D | core.c | 21 int optee_pool_op_alloc_helper(struct tee_shm_pool *pool, struct tee_shm *shm, in optee_pool_op_alloc_helper() argument 24 struct tee_shm *shm, in optee_pool_op_alloc_helper() 41 shm->kaddr = page_address(page); in optee_pool_op_alloc_helper() 42 shm->paddr = page_to_phys(page); in optee_pool_op_alloc_helper() 43 shm->size = PAGE_SIZE << order; in optee_pool_op_alloc_helper() 58 rc = shm_register(shm->ctx, shm, pages, nr_pages, in optee_pool_op_alloc_helper() 59 (unsigned long)shm->kaddr); in optee_pool_op_alloc_helper() 68 free_pages((unsigned long)shm->kaddr, order); in optee_pool_op_alloc_helper() 72 void optee_pool_op_free_helper(struct tee_shm_pool *pool, struct tee_shm *shm, in optee_pool_op_free_helper() argument 74 struct tee_shm *shm)) in optee_pool_op_free_helper() [all …]
|
H A D | call.c | 38 struct tee_shm *shm; member 156 tee_shm_free(entry->shm); in optee_shm_arg_cache_uninit() 229 entry->shm = res; in optee_get_msg_arg() 235 res = tee_shm_get_va(entry->shm, offs); in optee_get_msg_arg() 243 *shm_ret = entry->shm; in optee_get_msg_arg() 287 struct tee_shm *shm; in optee_open_session() local 296 &entry, &shm, &offs); in optee_open_session() 331 if (optee->ops->do_call_with_arg(ctx, shm, offs)) { in optee_open_session() 368 struct tee_shm *shm; in optee_close_session_helper() local 371 msg_arg = optee_get_msg_arg(ctx, 0, &entry, &shm, &offs); in optee_close_session_helper() [all …]
|
H A D | rpc.c | 88 msg.buf = params[2].u.memref.shm->kaddr; in handle_rpc_func_cmd_i2c_transfer() 215 struct tee_shm *shm; in optee_rpc_cmd_alloc_suppl() local 228 shm = tee_shm_get_from_id(optee->supp.ctx, param.u.value.c); in optee_rpc_cmd_alloc_suppl() 230 return shm; in optee_rpc_cmd_alloc_suppl() 233 void optee_rpc_cmd_free_suppl(struct tee_context *ctx, struct tee_shm *shm) in optee_rpc_cmd_free_suppl() argument 239 param.u.value.b = tee_shm_get_id(shm); in optee_rpc_cmd_free_suppl() 253 tee_shm_put(shm); in optee_rpc_cmd_free_suppl()
|
/openbmc/linux/drivers/nvmem/ |
H A D | stm32-bsec-optee-ta.c | 142 struct tee_shm *shm; in stm32_bsec_optee_ta_read() local 168 shm = tee_shm_alloc_kernel_buf(ctx, num_bytes); in stm32_bsec_optee_ta_read() 169 if (IS_ERR(shm)) { in stm32_bsec_optee_ta_read() 170 ret = PTR_ERR(shm); in stm32_bsec_optee_ta_read() 175 param[1].u.memref.shm = shm; in stm32_bsec_optee_ta_read() 186 shm_buf = tee_shm_get_va(shm, 0); in stm32_bsec_optee_ta_read() 196 tee_shm_free(shm); in stm32_bsec_optee_ta_read() 207 { struct tee_shm *shm; in stm32_bsec_optee_ta_write() local 233 shm = tee_shm_alloc_kernel_buf(ctx, bytes); in stm32_bsec_optee_ta_write() 234 if (IS_ERR(shm)) { in stm32_bsec_optee_ta_write() [all …]
|
/openbmc/openbmc/meta-openembedded/meta-oe/recipes-devtools/php/php/ |
H A D | 0001-ext-opcache-config.m4-enable-opcache.patch | 42 -#include <sys/shm.h> 50 - char *shm; 58 - shm = shmat(ipc_id, NULL, 0); 59 - if (shm == (void *)-1) { 65 - shmdt(shm); 75 - shmdt(shm); 82 - strcpy(shm, "hello"); 88 - strcpy(shm, "bye"); 97 - if (strcmp(shm, "bye") != 0) { 130 - char *shm; [all …]
|
/openbmc/u-boot/drivers/tee/optee/ |
H A D | core.c | 188 mp->u.rmem.shm_ref = (ulong)p->u.memref.shm; in to_msg_param() 203 struct tee_shm *shm; in from_msg_param() local 230 shm = (struct tee_shm *)(ulong)mp->u.rmem.shm_ref; in from_msg_param() 232 if (!shm) { in from_msg_param() 234 p->u.memref.shm = NULL; in from_msg_param() 238 p->u.memref.shm = shm; in from_msg_param() 250 struct tee_shm *shm; in handle_rpc() local 256 &shm)) { in handle_rpc() 258 virt_to_phys(shm->addr)); in handle_rpc() 260 reg_pair_from_64(¶m->a4, ¶m->a5, (ulong)shm); in handle_rpc() [all …]
|
H A D | supplicant.c | 20 struct tee_shm *shm; in cmd_shm_alloc() local 33 TEE_SHM_REGISTER | TEE_SHM_ALLOC, &shm); in cmd_shm_alloc() 42 pl = optee_alloc_and_init_page_list(shm->addr, shm->size, &ph_ptr); in cmd_shm_alloc() 45 tee_shm_free(shm); in cmd_shm_alloc() 53 arg->params[0].u.tmem.size = shm->size; in cmd_shm_alloc() 54 arg->params[0].u.tmem.shm_ref = (ulong)shm; in cmd_shm_alloc()
|
/openbmc/linux/drivers/media/platform/samsung/s5p-mfc/ |
H A D | s5p_mfc_opr_v5.c | 224 ctx->shm.size = buf_size->shm; in s5p_mfc_alloc_instance_buffer_v5() 225 ret = s5p_mfc_alloc_priv_buf(dev, BANK_L_CTX, &ctx->shm); in s5p_mfc_alloc_instance_buffer_v5() 233 ctx->shm.ofs = ctx->shm.dma - dev->dma_base[BANK_L_CTX]; in s5p_mfc_alloc_instance_buffer_v5() 234 BUG_ON(ctx->shm.ofs & ((1 << MFC_BANK1_ALIGN_ORDER) - 1)); in s5p_mfc_alloc_instance_buffer_v5() 236 memset(ctx->shm.virt, 0, buf_size->shm); in s5p_mfc_alloc_instance_buffer_v5() 245 s5p_mfc_release_priv_buf(ctx->dev, &ctx->shm); in s5p_mfc_release_instance_buffer_v5() 263 *(u32 *)(ctx->shm.virt + ofs) = data; in s5p_mfc_write_info_v5() 271 return *(u32 *)(ctx->shm.virt + ofs); in s5p_mfc_read_info_v5() 358 mfc_write(dev, ctx->shm.ofs, S5P_FIMV_SI_CH0_HOST_WR_ADR); in s5p_mfc_set_shared_buffer() 679 unsigned int shm; in s5p_mfc_set_enc_params() local [all …]
|
/openbmc/linux/drivers/rtc/ |
H A D | rtc-optee.c | 51 struct tee_shm *shm; member 69 param[0].u.memref.shm = priv->shm; in optee_rtc_readtime() 76 optee_tm = tee_shm_get_va(priv->shm, 0); in optee_rtc_readtime() 117 param[0].u.memref.shm = priv->shm; in optee_rtc_settime() 120 rtc_data = tee_shm_get_va(priv->shm, 0); in optee_rtc_settime() 204 param[0].u.memref.shm = priv->shm; in optee_rtc_read_info() 211 info = tee_shm_get_va(priv->shm, 0); in optee_rtc_read_info() 247 struct tee_shm *shm; in optee_rtc_probe() local 277 shm = tee_shm_alloc_kernel_buf(priv->ctx, sizeof(struct optee_rtc_info)); in optee_rtc_probe() 278 if (IS_ERR(shm)) { in optee_rtc_probe() [all …]
|
/openbmc/linux/drivers/char/tpm/ |
H A D | tpm_ftpm_tee.c | 81 struct tee_shm *shm = pvt_data->shm; in ftpm_tee_tpm_op_send() local 105 .shm = shm, in ftpm_tee_tpm_op_send() 111 temp_buf = tee_shm_get_va(shm, 0); in ftpm_tee_tpm_op_send() 123 .shm = shm, in ftpm_tee_tpm_op_send() 137 temp_buf = tee_shm_get_va(shm, command_params[1].u.memref.shm_offs); in ftpm_tee_tpm_op_send() 256 pvt_data->shm = tee_shm_alloc_kernel_buf(pvt_data->ctx, in ftpm_tee_probe() 259 if (IS_ERR(pvt_data->shm)) { in ftpm_tee_probe() 289 tee_shm_free(pvt_data->shm); in ftpm_tee_probe() 323 tee_shm_free(pvt_data->shm); in ftpm_tee_remove() 351 tee_shm_free(pvt_data->shm); in ftpm_plat_tee_shutdown()
|
/openbmc/linux/sound/usb/usx2y/ |
H A D | usx2yhwdeppcm.c | 107 struct snd_usx2y_hwdep_pcm_shm *shm = usx2y->hwdep_pcm_shm; in usx2y_hwdep_urb_play_prepare() local 110 if (shm->playback_iso_start < 0) { in usx2y_hwdep_urb_play_prepare() 111 shm->playback_iso_start = shm->captured_iso_head - in usx2y_hwdep_urb_play_prepare() 113 if (shm->playback_iso_start < 0) in usx2y_hwdep_urb_play_prepare() 114 shm->playback_iso_start += ARRAY_SIZE(shm->captured_iso); in usx2y_hwdep_urb_play_prepare() 115 shm->playback_iso_head = shm->playback_iso_start; in usx2y_hwdep_urb_play_prepare() 121 counts = shm->captured_iso[shm->playback_iso_head].length / usx2y->stride; in usx2y_hwdep_urb_play_prepare() 127 urb->iso_frame_desc[pack].offset = shm->captured_iso[shm->playback_iso_head].offset; in usx2y_hwdep_urb_play_prepare() 128 urb->iso_frame_desc[pack].length = shm->captured_iso[shm->playback_iso_head].length; in usx2y_hwdep_urb_play_prepare() 132 if (++shm->playback_iso_head >= ARRAY_SIZE(shm->captured_iso)) in usx2y_hwdep_urb_play_prepare() [all …]
|
/openbmc/openbmc/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/files/ |
H A D | 0009-shm.c-Mark-glibc-specific-changes-so.patch | 4 Subject: [PATCH] shm.c: Mark glibc specific changes so 10 shm.c | 3 ++- 13 diff --git a/shm.c b/shm.c 15 --- a/shm.c 16 +++ b/shm.c
|
/openbmc/linux/tools/testing/selftests/futex/functional/ |
H A D | futex_wait.c | 54 void *shm; in main() local 137 shm = mmap(NULL, sizeof(f_private), PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0); in main() 138 if (shm == MAP_FAILED) { in main() 143 memcpy(shm, &f_private, sizeof(f_private)); in main() 145 futex = shm; in main() 154 res = futex_wake(shm, 1, 0); in main() 165 munmap(shm, sizeof(f_private)); in main()
|
/openbmc/openbmc/poky/meta/recipes-core/systemd/systemd/ |
H A D | init | 43 [ -e /dev/shm ] || mkdir -m 1777 /dev/shm 63 [ -e /dev/shm/udev.cache ] && rm -f /dev/shm/udev.cache 65 echo "$VERSION$CMDLINE$DEVICES$ATAGS" > /dev/shm/udev.cache 68 echo "$VERSION$CMDLINE$DEVICES$ATAGS" > /dev/shm/udev.cache
|
/openbmc/u-boot/include/ |
H A D | tee.h | 96 struct tee_shm *shm; member 225 int (*shm_register)(struct udevice *dev, struct tee_shm *shm); 232 int (*shm_unregister)(struct udevice *dev, struct tee_shm *shm); 282 void tee_shm_free(struct tee_shm *shm); 292 bool tee_shm_is_registered(struct tee_shm *shm, struct udevice *dev);
|
/openbmc/qemu/docs/system/devices/ |
H A D | ivshmem.rst | 16 -object memory-backend-file,size=1M,share,mem-path=/dev/shm/ivshmem,id=hostmem 27 ivshmem-server -p pidfile -S path -m shm-name -l shm-size -n vectors 53 Instead of specifying the <shm size> using POSIX shm, you may specify a
|