| /linux/drivers/tee/optee/ | 
| H A D | ffa_abi.c | 59 static struct tee_shm *optee_shm_from_ffa_handle(struct optee *optee,  in optee_shm_from_ffa_handle()  argument65 	mutex_lock(&optee->ffa.mutex);  in optee_shm_from_ffa_handle()
 66 	r = rhashtable_lookup_fast(&optee->ffa.global_ids, &global_id,  in optee_shm_from_ffa_handle()
 70 	mutex_unlock(&optee->ffa.mutex);  in optee_shm_from_ffa_handle()
 75 static int optee_shm_add_ffa_handle(struct optee *optee, struct tee_shm *shm,  in optee_shm_add_ffa_handle()  argument
 87 	mutex_lock(&optee->ffa.mutex);  in optee_shm_add_ffa_handle()
 88 	rc = rhashtable_lookup_insert_fast(&optee->ffa.global_ids, &r->linkage,  in optee_shm_add_ffa_handle()
 90 	mutex_unlock(&optee->ffa.mutex);  in optee_shm_add_ffa_handle()
 98 static int optee_shm_rem_ffa_handle(struct optee *optee, u64 global_id)  in optee_shm_rem_ffa_handle()  argument
 103 	mutex_lock(&optee->ffa.mutex);  in optee_shm_rem_ffa_handle()
 [all …]
 
 | 
| H A D | notif.c | 21 static bool have_key(struct optee *optee, u_int key)  in have_key()  argument25 	list_for_each_entry(entry, &optee->notif.db, link)  in have_key()
 32 int optee_notif_wait(struct optee *optee, u_int key, u32 timeout)  in optee_notif_wait()  argument
 38 	if (key > optee->notif.max_key)  in optee_notif_wait()
 47 	spin_lock_irqsave(&optee->notif.lock, flags);  in optee_notif_wait()
 53 	if (test_bit(key, optee->notif.bitmap)) {  in optee_notif_wait()
 54 		clear_bit(key, optee->notif.bitmap);  in optee_notif_wait()
 62 	if (have_key(optee, key)) {  in optee_notif_wait()
 67 	list_add_tail(&entry->link, &optee->notif.db);  in optee_notif_wait()
 72 	spin_unlock_irqrestore(&optee->notif.lock, flags);  in optee_notif_wait()
 [all …]
 
 | 
| H A D | rpc.c | 40 	struct optee *optee = tee_get_drvdata(ctx->teedev);  in handle_rpc_func_cmd_i2c_transfer()  local65 	if (optee->ops->from_msg_param(optee, params, arg->num_params,  in handle_rpc_func_cmd_i2c_transfer()
 109 		if (optee->ops->to_msg_param(optee, arg->params,  in handle_rpc_func_cmd_i2c_transfer()
 131 static void handle_rpc_func_cmd_wq(struct optee *optee,  in handle_rpc_func_cmd_wq()  argument
 145 		rc = optee_notif_wait(optee, arg->params[0].u.value.b, arg->params[0].u.value.c);  in handle_rpc_func_cmd_wq()
 150 		if (optee_notif_send(optee, arg->params[0].u.value.b))  in handle_rpc_func_cmd_wq()
 188 static void handle_rpc_supp_cmd(struct tee_context *ctx, struct optee *optee,  in handle_rpc_supp_cmd()  argument
 202 	if (optee->ops->from_msg_param(optee, params, arg->num_params,  in handle_rpc_supp_cmd()
 210 	if (optee->ops->to_msg_param(optee, arg->params, arg->num_params,  in handle_rpc_supp_cmd()
 221 	struct optee *optee = tee_get_drvdata(ctx->teedev);  in optee_rpc_cmd_alloc_suppl()  local
 [all …]
 
 | 
| H A D | call.c | 34  * (optee->rpc_param_count).217 void optee_shm_arg_cache_init(struct optee *optee, u32 flags)  in optee_shm_arg_cache_init()  argument
 219 	INIT_LIST_HEAD(&optee->shm_arg_cache.shm_args);  in optee_shm_arg_cache_init()
 220 	mutex_init(&optee->shm_arg_cache.mutex);  in optee_shm_arg_cache_init()
 221 	optee->shm_arg_cache.flags = flags;  in optee_shm_arg_cache_init()
 224 void optee_shm_arg_cache_uninit(struct optee *optee)  in optee_shm_arg_cache_uninit()  argument
 226 	struct list_head *head = &optee->shm_arg_cache.shm_args;  in optee_shm_arg_cache_uninit()
 229 	mutex_destroy(&optee->shm_arg_cache.mutex);  in optee_shm_arg_cache_uninit()
 269 	struct optee *optee = tee_get_drvdata(ctx->teedev);  in optee_get_msg_arg()  local
 270 	size_t sz = optee_msg_arg_size(optee->rpc_param_count);  in optee_get_msg_arg()
 [all …]
 
 | 
| H A D | supp.c | 80 	struct optee *optee = tee_get_drvdata(ctx->teedev);  in optee_supp_thrd_req()  local81 	struct optee_supp *supp = &optee->supp;  in optee_supp_thrd_req()
 214 	struct optee *optee = tee_get_drvdata(teedev);  in optee_supp_recv()  local
 215 	struct optee_supp *supp = &optee->supp;  in optee_supp_recv()
 323 	struct optee *optee = tee_get_drvdata(teedev);  in optee_supp_send()  local
 324 	struct optee_supp *supp = &optee->supp;  in optee_supp_send()
 
 | 
| H A D | device.c | 90 	if (dev_set_name(&optee_device->dev, "optee-ta-%pUb", device_uuid)) {  in optee_register_device()188 	if (!strncmp(dev_name(dev), "optee-ta", strlen("optee-ta")))  in __optee_unregister_device()
 
 | 
| H A D | optee_trace.h | 3  * optee trace points10 #define TRACE_SYSTEM optee
 
 | 
| /linux/Documentation/devicetree/bindings/arm/firmware/ | 
| H A D | linaro,optee-tz.yaml | 4 $id: http://devicetree.org/schemas/arm/firmware/linaro,optee-tz.yaml#22     const: optee
 25     const: linaro,optee-tz
 42       register assignments are specified in drivers/tee/optee/optee_smc.h
 54         optee  {
 55             compatible = "linaro,optee-tz";
 63         optee  {
 64             compatible = "linaro,optee-tz";
 
 | 
| /linux/arch/arm/boot/dts/st/ | 
| H A D | stm32mp15-scmi.dtsi | 11 		optee: optee {  label12 			compatible = "linaro,optee-tz";
 19 			compatible = "linaro,scmi-optee";
 22 			linaro,optee-channel-id = <0>;
 
 | 
| H A D | stm32mp157a-dk1-scmi.dts | 17 		optee@de000000 {65 &optee {
 
 | 
| H A D | stm32mp157c-ed1-scmi.dts | 17 		optee@fe000000 {70 &optee {
 
 | 
| H A D | stm32mp157c-dk2-scmi.dts | 17 		optee@de000000 {71 &optee {
 
 | 
| H A D | stm32mp157c-ev1-scmi.dts | 17 		optee@fe000000 {75 &optee {
 
 | 
| H A D | stm32mp157f-dk2-scmi.dtsi | 11 		optee@de000000 {87 &optee {
 
 | 
| /linux/Documentation/ABI/testing/ | 
| H A D | sysfs-bus-optee-devices | 1 What:		/sys/bus/tee/devices/optee-ta-<uuid>/8 		are free to create needed API under optee-ta-<uuid> directory.
 10 What:		/sys/bus/tee/devices/optee-ta-<uuid>/need_supplicant
 
 | 
| /linux/arch/arm64/boot/dts/st/ | 
| H A D | stm32mp211.dtsi | 50 		optee {51 			compatible = "linaro,optee-tz";
 56 			compatible = "linaro,scmi-optee";
 59 			linaro,optee-channel-id = <0>;
 
 | 
| /linux/arch/arm/mach-at91/ | 
| H A D | sam_secure.c | 32 	/* If optee has been detected, then we are running in normal world */  in sam_linux_is_optee_available()45 	np = of_find_node_by_path("/firmware/optee");  in sam_secure_init()
 
 | 
| /linux/Documentation/tee/ | 
| H A D | op-tee.rst | 66 OP-TEE provides a pseudo Trusted Application: drivers/tee/optee/device.c in159 [3] drivers/tee/optee/optee_smc.h
 161 [4] drivers/tee/optee/optee_msg.h
 
 | 
| /linux/arch/arm64/boot/dts/amlogic/ | 
| H A D | meson-a1-ad402.dts | 38 		optee {39 			compatible = "linaro,optee-tz";
 
 | 
| /linux/arch/arm64/boot/dts/ti/ | 
| H A D | k3-am64.dtsi | 25 		optee {26 			compatible = "linaro,optee-tz";
 
 | 
| H A D | k3-am65.dtsi | 25 		optee {26 			compatible = "linaro,optee-tz";
 
 | 
| H A D | k3-am62p.dtsi | 23 		optee {24 			compatible = "linaro,optee-tz";
 
 | 
| H A D | k3-am62.dtsi | 25 		optee {26 			compatible = "linaro,optee-tz";
 
 | 
| /linux/drivers/rtc/ | 
| H A D | rtc-optee.c | 622 		 * In case of supported alarm feature on optee side, we create a kthread  in optee_rtc_probe()623 		 * that will, in a new optee session, call a PTA interface "rtc_wait_alarm".  in optee_rtc_probe()
 625 		 * The new optee session is therefore only needed in this case as we cannot  in optee_rtc_probe()
 626 		 * use the same session for parallel calls to optee PTA.  in optee_rtc_probe()
 708 		dev_err(dev, "Unable to transmit wakeup information to optee rtc\n");  in optee_rtc_suspend()
 
 | 
| /linux/drivers/firmware/arm_scmi/transports/ | 
| H A D | Makefile | 8 scmi_transport_optee-objs := optee.o
 |