Lines Matching +full:shared +full:- +full:memory

1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */
3 * Copyright (c) 2015-2021, Linaro Limited
12 * This file defines the OP-TEE message protocol (ABI) used to communicate
13 * with an instance of OP-TEE running in secure world.
21 * Part 1 - formatting of messages
49 * Pointer to a list of pages used to register user-defined SHM buffer.
52 * list of page addresses. OP-TEE core can reconstruct contiguous buffer from
64 * uint64_t pages_array[OPTEE_MSG_NONCONTIG_PAGE_SIZE/sizeof(uint64_t) - 1];
77 * Memory attributes for caching passed with temp memrefs. The actual value
80 * defined for the memory range should be used. If optee_smc.h is used as
98 * Page size used in non-contiguous buffer entries
105 * struct optee_msg_param_tmem - temporary memory reference parameter
108 * @shm_ref: Temporary shared memory reference, pointer to a struct tee_shm
112 * have completely independent memory mapping. Normal world can even have a
124 * struct optee_msg_param_rmem - registered memory reference parameter
125 * @offs: Offset into shared memory reference
127 * @shm_ref: Shared memory reference, pointer to a struct tee_shm
136 * struct optee_msg_param_fmem - ffa memory reference parameter
137 * @offs_lower: Lower bits of offset into shared memory reference
138 * @offs_upper: Upper bits of offset into shared memory reference
139 * @internal_offs: Internal offset into the first page of shared memory
142 * @global_id: Global identifier of Shared memory
153 * struct optee_msg_param_value - opaque value parameter
164 * struct optee_msg_param - parameter used together with struct optee_msg_arg
166 * @tmem: parameter by temporary memory reference
167 * @rmem: parameter by registered memory reference
168 * @fmem: parameter by ffa registered memory reference
191 * struct optee_msg_arg - call argument
223 * OPTEE_MSG_GET_ARG_SIZE - return size of struct optee_msg_arg
235 * Part 2 - requests from normal world
241 * 384fb3e0-e7f8-11e3-af63-0002a5d5c51b.
242 * Represented in 4 32-bit words in OPTEE_MSG_UID_0, OPTEE_MSG_UID_1,
245 * In the case where the OP-TEE image is loaded by the kernel, this will
247 * the TF-A image loading service at that time instead of OP-TEE. That UID is:
248 * a3fbeab1-1246-315d-c7c4-06b9c03cbea4.
249 * Represented in 4 32-bit words in OPTEE_MSG_IMAGE_LOAD_UID_0,
265 * extensions. Represented in 2 32-bit words in OPTEE_MSG_REVISION_MAJOR
275 * Used by non-secure world to figure out which Trusted OS is installed.
278 * Returns UUID in 4 32-bit words in the same way as
290 * Used by non-secure world to figure out which version of the Trusted OS
294 * Returns revision in 2 32-bit words in the same way as
306 * param[0].u.value.a-b uuid of Trusted Application
307 * param[1].u.value.a-b uuid of Client
319 * OPTEE_MSG_CMD_REGISTER_SHM registers a shared memory reference. The
325 * [in] param[0].u.tmem.shm_ref holds shared memory reference
327 * OPTEE_MSG_CMD_UNREGISTER_SHM unregisters a previously registered shared
328 * memory reference. The information is passed as:
330 * [in] param[0].u.rmem.shm_ref holds shared memory reference