| /trusted-firmware-m-latest/secure_fw/spm/core/ |
| D | spm_connection_pool.c | 61 psa_handle_t connection_to_handle(struct connection_t *p_connection) in connection_to_handle() argument 66 handle = (psa_handle_t)((((uintptr_t)p_connection - in connection_to_handle() 91 struct connection_t *p_connection; in handle_to_connection() local 97 p_connection = (struct connection_t *)((((uintptr_t)handle - in handle_to_connection() 101 return p_connection; in handle_to_connection() 121 psa_status_t spm_validate_connection(const struct connection_t *p_connection) in spm_validate_connection() argument 125 (uint8_t *)p_connection) != true) { in spm_validate_connection() 132 void spm_free_connection(struct connection_t *p_connection) in spm_free_connection() argument 136 SPM_ASSERT(p_connection != NULL); in spm_free_connection() 140 tfm_pool_free(connection_pool, p_connection); in spm_free_connection()
|
| D | spm_local_connection.c | 51 psa_handle_t connection_to_handle(struct connection_t *p_connection) in connection_to_handle() argument 53 (void)p_connection; in connection_to_handle() 60 struct connection_t *p_connection; in handle_to_connection() local 66 p_connection = (struct connection_t *) in handle_to_connection() 69 return p_connection; in handle_to_connection() 87 psa_status_t spm_validate_connection(const struct connection_t *p_connection) in spm_validate_connection() argument 93 void spm_free_connection(struct connection_t *p_connection) in spm_free_connection() argument 95 (void)p_connection; in spm_free_connection()
|
| D | psa_call_api.c | 19 psa_status_t spm_associate_call_params(struct connection_t *p_connection, in spm_associate_call_params() argument 39 p_connection->msg.type = type; in spm_associate_call_params() 108 spm_memset(p_connection->msg.in_size, 0, sizeof(p_connection->msg.in_size)); in spm_associate_call_params() 109 spm_memset(p_connection->msg.out_size, 0, sizeof(p_connection->msg.out_size)); in spm_associate_call_params() 123 p_connection->msg.in_size[i] = ivecs_local[i].len; in spm_associate_call_params() 124 p_connection->invec_base[i] = ivecs_local[i].base; in spm_associate_call_params() 125 p_connection->invec_accessed[i] = 0; in spm_associate_call_params() 146 p_connection->msg.out_size[i] = ovecs_local[i].len; in spm_associate_call_params() 147 p_connection->outvec_base[i] = ovecs_local[i].base; in spm_associate_call_params() 148 p_connection->outvec_written[i] = 0; in spm_associate_call_params() [all …]
|
| D | mailbox_agent_api.c | 26 struct connection_t *p_connection; in tfm_spm_agent_psa_call() local 39 status = spm_get_idle_connection(&p_connection, handle, params->ns_client_id_stateless); in tfm_spm_agent_psa_call() 44 status = spm_associate_call_params(p_connection, control, params->p_invecs, params->p_outvecs); in tfm_spm_agent_psa_call() 47 spm_free_connection(p_connection); in tfm_spm_agent_psa_call() 53 p_connection->client_data = client_data_stateless; in tfm_spm_agent_psa_call() 55 return backend_messaging(p_connection); in tfm_spm_agent_psa_call() 65 struct connection_t *p_connection; in tfm_spm_agent_psa_connect() local 75 status = spm_psa_connect_client_id_associated(&p_connection, sid, version, ns_client_id); in tfm_spm_agent_psa_connect() 81 p_connection->client_data = client_data; in tfm_spm_agent_psa_connect() 83 return backend_messaging(p_connection); in tfm_spm_agent_psa_connect()
|
| D | psa_connection_api.c | 23 struct connection_t *p_connection; in tfm_spm_client_psa_connect() local 29 status = spm_psa_connect_client_id_associated(&p_connection, sid, version, client_id); in tfm_spm_client_psa_connect() 34 return backend_messaging(p_connection); in tfm_spm_client_psa_connect() 37 psa_status_t spm_psa_connect_client_id_associated(struct connection_t **p_connection, in spm_psa_connect_client_id_associated() argument 89 *p_connection = connection; in spm_psa_connect_client_id_associated() 102 struct connection_t *p_connection; in spm_psa_close_client_id_associated() local 119 status = spm_get_idle_connection(&p_connection, handle, client_id); in spm_psa_close_client_id_associated() 124 p_connection->msg.type = PSA_IPC_DISCONNECT; in spm_psa_close_client_id_associated() 126 return backend_messaging(p_connection); in spm_psa_close_client_id_associated()
|
| D | backend_sfn.c | 42 psa_status_t backend_messaging(struct connection_t *p_connection) in backend_messaging() argument 47 if (!p_connection || !p_connection->service || in backend_messaging() 48 !p_connection->service->p_ldinf || in backend_messaging() 49 !p_connection->service->partition) { in backend_messaging() 53 p_target = p_connection->service->partition; in backend_messaging() 54 p_target->p_handles = p_connection; in backend_messaging() 69 status = ((service_fn_t)p_connection->service->p_ldinf->sfn)(&p_connection->msg); in backend_messaging() 71 p_connection->status = TFM_HANDLE_STATUS_ACTIVE; in backend_messaging()
|
| D | spm_ipc.c | 181 psa_status_t spm_get_idle_connection(struct connection_t **p_connection, in spm_get_idle_connection() argument 191 SPM_ASSERT(p_connection); in spm_get_idle_connection() 264 *p_connection = connection; in spm_get_idle_connection() 296 void spm_init_idle_connection(struct connection_t *p_connection, in spm_init_idle_connection() argument 300 SPM_ASSERT(p_connection); in spm_init_idle_connection() 304 spm_memset(&p_connection->msg, 0, sizeof(psa_msg_t)); in spm_init_idle_connection() 306 p_connection->service = service; in spm_init_idle_connection() 307 p_connection->p_client = GET_CURRENT_COMPONENT(); in spm_init_idle_connection() 308 p_connection->msg.client_id = client_id; in spm_init_idle_connection() 310 p_connection->msg.handle = connection_to_handle(p_connection); in spm_init_idle_connection() [all …]
|
| D | spm.h | 143 psa_status_t spm_validate_connection(const struct connection_t *p_connection); 146 void spm_free_connection(struct connection_t *p_connection); 215 psa_status_t spm_get_idle_connection(struct connection_t **p_connection, 241 void spm_init_idle_connection(struct connection_t *p_connection, 249 psa_status_t spm_associate_call_params(struct connection_t *p_connection, 329 psa_handle_t connection_to_handle(struct connection_t *p_connection); 359 psa_status_t spm_psa_connect_client_id_associated(struct connection_t **p_connection,
|
| D | backend_ipc.c | 180 psa_status_t backend_messaging(struct connection_t *p_connection) in backend_messaging() argument 186 if (!p_connection || !p_connection->service || in backend_messaging() 187 !p_connection->service->p_ldinf || in backend_messaging() 188 !p_connection->service->partition) { in backend_messaging() 192 p_owner = p_connection->service->partition; in backend_messaging() 193 signal = p_connection->service->p_ldinf->signal; in backend_messaging() 195 UNI_LIST_INSERT_AFTER(p_owner, p_connection, p_handles); in backend_messaging() 204 if (tfm_spm_is_rpc_msg(p_connection)) { in backend_messaging() 207 signal = backend_wait_signals(p_connection->p_client, ASYNC_MSG_REPLY); in backend_messaging() 213 p_connection->status = TFM_HANDLE_STATUS_ACTIVE; in backend_messaging()
|
| /trusted-firmware-m-latest/secure_fw/spm/include/ffm/ |
| D | backend.h | 40 psa_status_t backend_messaging(struct connection_t *p_connection);
|