Lines Matching refs:arg
182 int handle_invoke_cmd(struct tee_ioctl_invoke_arg *arg, u32 sinfo, in handle_invoke_cmd() argument
188 if (!arg || (!p && arg->num_params)) in handle_invoke_cmd()
191 arg->ret_origin = TEEC_ORIGIN_COMMS; in handle_invoke_cmd()
193 if (arg->session == 0) { in handle_invoke_cmd()
194 arg->ret = TEEC_ERROR_BAD_PARAMETERS; in handle_invoke_cmd()
198 ret = tee_params_to_amd_params(p, arg->num_params, &cmd.op); in handle_invoke_cmd()
201 arg->ret = TEEC_ERROR_BAD_PARAMETERS; in handle_invoke_cmd()
205 cmd.ta_handle = get_ta_handle(arg->session); in handle_invoke_cmd()
206 cmd.cmd_id = arg->func; in handle_invoke_cmd()
210 sizeof(cmd), &arg->ret); in handle_invoke_cmd()
212 arg->ret = TEEC_ERROR_COMMUNICATION; in handle_invoke_cmd()
214 ret = amd_params_to_tee_params(p, arg->num_params, &cmd.op); in handle_invoke_cmd()
217 arg->ret = TEEC_ERROR_GENERIC; in handle_invoke_cmd()
220 arg->ret_origin = cmd.return_origin; in handle_invoke_cmd()
222 arg->ret_origin, arg->ret); in handle_invoke_cmd()
293 int handle_open_session(struct tee_ioctl_open_session_arg *arg, u32 *info, in handle_open_session() argument
299 if (!arg || !info || (!p && arg->num_params)) in handle_open_session()
302 arg->ret_origin = TEEC_ORIGIN_COMMS; in handle_open_session()
304 if (arg->session == 0) { in handle_open_session()
305 arg->ret = TEEC_ERROR_GENERIC; in handle_open_session()
309 ret = tee_params_to_amd_params(p, arg->num_params, &cmd.op); in handle_open_session()
312 arg->ret = TEEC_ERROR_BAD_PARAMETERS; in handle_open_session()
316 cmd.ta_handle = get_ta_handle(arg->session); in handle_open_session()
320 sizeof(cmd), &arg->ret); in handle_open_session()
322 arg->ret = TEEC_ERROR_COMMUNICATION; in handle_open_session()
324 ret = amd_params_to_tee_params(p, arg->num_params, &cmd.op); in handle_open_session()
327 arg->ret = TEEC_ERROR_GENERIC; in handle_open_session()
330 arg->ret_origin = cmd.return_origin; in handle_open_session()
335 pr_debug("open session: ret = 0x%x RO = 0x%x\n", arg->ret, in handle_open_session()
336 arg->ret_origin); in handle_open_session()
341 int handle_load_ta(void *data, u32 size, struct tee_ioctl_open_session_arg *arg) in handle_load_ta() argument
347 if (size == 0 || !data || !arg) in handle_load_ta()
361 sizeof(cmd), &arg->ret); in handle_load_ta()
363 arg->ret_origin = TEEC_ORIGIN_COMMS; in handle_load_ta()
364 arg->ret = TEEC_ERROR_COMMUNICATION; in handle_load_ta()
366 set_session_id(cmd.ta_handle, 0, &arg->session); in handle_load_ta()
370 cmd.ta_handle, arg->ret_origin, arg->ret); in handle_load_ta()