optee 127 drivers/tee/optee/call.c struct optee *optee = tee_get_drvdata(ctx->teedev); optee 136 drivers/tee/optee/call.c optee_cq_wait_init(&optee->call_queue, &w); optee 140 drivers/tee/optee/call.c optee->invoke_fn(param.a0, param.a1, param.a2, param.a3, optee 149 drivers/tee/optee/call.c optee_cq_wait_for_completion(&optee->call_queue, &w); optee 168 drivers/tee/optee/call.c optee_cq_wait_final(&optee->call_queue, &w); optee 389 drivers/tee/optee/call.c void optee_enable_shm_cache(struct optee *optee) optee 394 drivers/tee/optee/call.c optee_cq_wait_init(&optee->call_queue, &w); optee 398 drivers/tee/optee/call.c optee->invoke_fn(OPTEE_SMC_ENABLE_SHM_CACHE, 0, 0, 0, 0, 0, 0, optee 402 drivers/tee/optee/call.c optee_cq_wait_for_completion(&optee->call_queue, &w); optee 404 drivers/tee/optee/call.c optee_cq_wait_final(&optee->call_queue, &w); optee 412 drivers/tee/optee/call.c void optee_disable_shm_cache(struct optee *optee) optee 417 drivers/tee/optee/call.c optee_cq_wait_init(&optee->call_queue, &w); optee 424 drivers/tee/optee/call.c optee->invoke_fn(OPTEE_SMC_DISABLE_SHM_CACHE, 0, 0, 0, 0, 0, 0, optee 435 drivers/tee/optee/call.c optee_cq_wait_for_completion(&optee->call_queue, &w); optee 438 drivers/tee/optee/call.c optee_cq_wait_final(&optee->call_queue, &w); optee 214 drivers/tee/optee/core.c struct optee *optee = tee_get_drvdata(teedev); optee 216 drivers/tee/optee/core.c if (optee->sec_caps & OPTEE_SMC_SEC_CAP_DYNAMIC_SHM) optee 225 drivers/tee/optee/core.c struct optee *optee = tee_get_drvdata(teedev); optee 231 drivers/tee/optee/core.c if (teedev == optee->supp_teedev) { optee 234 drivers/tee/optee/core.c mutex_lock(&optee->supp.mutex); optee 235 drivers/tee/optee/core.c if (!optee->supp.ctx) { optee 237 drivers/tee/optee/core.c optee->supp.ctx = ctx; optee 239 drivers/tee/optee/core.c mutex_unlock(&optee->supp.mutex); optee 257 drivers/tee/optee/core.c struct optee *optee = tee_get_drvdata(teedev); optee 299 drivers/tee/optee/core.c if (teedev == optee->supp_teedev) optee 300 drivers/tee/optee/core.c optee_supp_release(&optee->supp); optee 557 drivers/tee/optee/core.c static struct optee *optee_probe(struct device_node *np) optee 561 drivers/tee/optee/core.c struct optee *optee = NULL; optee 603 drivers/tee/optee/core.c optee = kzalloc(sizeof(*optee), GFP_KERNEL); optee 604 drivers/tee/optee/core.c if (!optee) { optee 609 drivers/tee/optee/core.c optee->invoke_fn = invoke_fn; optee 610 drivers/tee/optee/core.c optee->sec_caps = sec_caps; optee 612 drivers/tee/optee/core.c teedev = tee_device_alloc(&optee_desc, NULL, pool, optee); optee 617 drivers/tee/optee/core.c optee->teedev = teedev; optee 619 drivers/tee/optee/core.c teedev = tee_device_alloc(&optee_supp_desc, NULL, pool, optee); optee 624 drivers/tee/optee/core.c optee->supp_teedev = teedev; optee 626 drivers/tee/optee/core.c rc = tee_device_register(optee->teedev); optee 630 drivers/tee/optee/core.c rc = tee_device_register(optee->supp_teedev); optee 634 drivers/tee/optee/core.c mutex_init(&optee->call_queue.mutex); optee 635 drivers/tee/optee/core.c INIT_LIST_HEAD(&optee->call_queue.waiters); optee 636 drivers/tee/optee/core.c optee_wait_queue_init(&optee->wait_queue); optee 637 drivers/tee/optee/core.c optee_supp_init(&optee->supp); optee 638 drivers/tee/optee/core.c optee->memremaped_shm = memremaped_shm; optee 639 drivers/tee/optee/core.c optee->pool = pool; optee 641 drivers/tee/optee/core.c optee_enable_shm_cache(optee); optee 643 drivers/tee/optee/core.c if (optee->sec_caps & OPTEE_SMC_SEC_CAP_DYNAMIC_SHM) optee 646 drivers/tee/optee/core.c return optee; optee 648 drivers/tee/optee/core.c if (optee) { optee 654 drivers/tee/optee/core.c tee_device_unregister(optee->supp_teedev); optee 655 drivers/tee/optee/core.c tee_device_unregister(optee->teedev); optee 656 drivers/tee/optee/core.c kfree(optee); optee 665 drivers/tee/optee/core.c static void optee_remove(struct optee *optee) optee 672 drivers/tee/optee/core.c optee_disable_shm_cache(optee); optee 678 drivers/tee/optee/core.c tee_device_unregister(optee->supp_teedev); optee 679 drivers/tee/optee/core.c tee_device_unregister(optee->teedev); optee 681 drivers/tee/optee/core.c tee_shm_pool_free(optee->pool); optee 682 drivers/tee/optee/core.c if (optee->memremaped_shm) optee 683 drivers/tee/optee/core.c memunmap(optee->memremaped_shm); optee 684 drivers/tee/optee/core.c optee_wait_queue_exit(&optee->wait_queue); optee 685 drivers/tee/optee/core.c optee_supp_uninit(&optee->supp); optee 686 drivers/tee/optee/core.c mutex_destroy(&optee->call_queue.mutex); optee 688 drivers/tee/optee/core.c kfree(optee); optee 696 drivers/tee/optee/core.c static struct optee *optee_svc; optee 702 drivers/tee/optee/core.c struct optee *optee = NULL; optee 716 drivers/tee/optee/core.c optee = optee_probe(np); optee 719 drivers/tee/optee/core.c if (IS_ERR(optee)) optee 720 drivers/tee/optee/core.c return PTR_ERR(optee); optee 724 drivers/tee/optee/core.c optee_remove(optee); optee 730 drivers/tee/optee/core.c optee_svc = optee; optee 738 drivers/tee/optee/core.c struct optee *optee = optee_svc; optee 741 drivers/tee/optee/core.c if (optee) optee 742 drivers/tee/optee/core.c optee_remove(optee); optee 153 drivers/tee/optee/optee_private.h void optee_enable_shm_cache(struct optee *optee); optee 154 drivers/tee/optee/optee_private.h void optee_disable_shm_cache(struct optee *optee); optee 94 drivers/tee/optee/rpc.c static void handle_rpc_func_cmd_wq(struct optee *optee, optee 106 drivers/tee/optee/rpc.c wq_sleep(&optee->wait_queue, arg->params[0].u.value.b); optee 109 drivers/tee/optee/rpc.c wq_wakeup(&optee->wait_queue, arg->params[0].u.value.b); optee 174 drivers/tee/optee/rpc.c struct optee *optee = tee_get_drvdata(ctx->teedev); optee 186 drivers/tee/optee/rpc.c mutex_lock(&optee->supp.mutex); optee 188 drivers/tee/optee/rpc.c shm = tee_shm_get_from_id(optee->supp.ctx, param.u.value.c); optee 189 drivers/tee/optee/rpc.c mutex_unlock(&optee->supp.mutex); optee 356 drivers/tee/optee/rpc.c static void handle_rpc_func_cmd(struct tee_context *ctx, struct optee *optee, optee 373 drivers/tee/optee/rpc.c handle_rpc_func_cmd_wq(optee, arg); optee 402 drivers/tee/optee/rpc.c struct optee *optee = tee_get_drvdata(teedev); optee 434 drivers/tee/optee/rpc.c handle_rpc_func_cmd(ctx, optee, shm, call_ctx); optee 80 drivers/tee/optee/supp.c struct optee *optee = tee_get_drvdata(ctx->teedev); optee 81 drivers/tee/optee/supp.c struct optee_supp *supp = &optee->supp; optee 233 drivers/tee/optee/supp.c struct optee *optee = tee_get_drvdata(teedev); optee 234 drivers/tee/optee/supp.c struct optee_supp *supp = &optee->supp; optee 342 drivers/tee/optee/supp.c struct optee *optee = tee_get_drvdata(teedev); optee 343 drivers/tee/optee/supp.c struct optee_supp *supp = &optee->supp;