Lines Matching +full:non +full:- +full:secure
1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */
3 * Copyright (c) 2015-2021, Linaro Limited
8 #include <linux/arm-smccc.h>
28 * Normal cached memory (write-back), shareable for SMP systems and not
36 * 32-bit registers.
44 * 384fb3e0-e7f8-11e3-af63-0002a5d5c51b.
75 * Used by non-secure world to figure out which Trusted OS is installed.
78 * Returns UUID in a0-4 in the same way as OPTEE_SMC_CALLS_UID
88 * Used by non-secure world to figure out which version of the Trusted OS
92 * Returns revision in a0-1 in the same way as OPTEE_SMC_CALLS_REVISION
93 * described above. May optionally return a 32-bit build identifier in a2,
118 * 2. Non-secure interrupts should not be masked
126 * a1 Upper 32 bits of a 64-bit physical pointer to a struct optee_msg_arg
127 * a2 Lower 32 bits of a 64-bit physical pointer to a struct optee_msg_arg
130 * a4-6 Not used
135 * a1 Upper 32 bits of a 64-bit shared memory cookie
136 * a2 Lower 32 bits of a 64-bit shared memory cookie
139 * a4-6 Not used
144 * a1-3 Not used
145 * a4-7 Preserved
149 * a1-3 Preserved
150 * a4-7 Preserved
154 * a1-2 RPC parameters
155 * a3-7 Resume information, must be preserved
182 * Returns the Secure/Non-secure shared memory config.
186 * a1-6 Not used
195 * a4-7 Preserved
199 * a1-3 Not used
200 * a4-7 Preserved
214 * Exchanges capabilities between normal world and secure world
219 * a2-6 Not used
224 * a1 bitfield of secure world capabilities OPTEE_SMC_SEC_CAP_*
225 * a2 The maximum secure world notification number
230 * a4-7 Preserved
234 * a1 bitfield of secure world capabilities OPTEE_SMC_SEC_CAP_*
235 * a2-7 Preserved
239 /* Secure world has reserved shared memory for normal world to use */
241 /* Secure world can communicate via previously unregistered shared memory */
245 * Secure world supports commands "register/unregister shared memory",
246 * secure world accepts command buffers located in any parts of non-secure RAM
249 /* Secure world is built with virtualization support */
251 /* Secure world supports Shared Memory with a NULL reference */
253 /* Secure world supports asynchronous notification of normal world */
255 /* Secure world supports pre-allocating RPC arg struct */
272 * Secure world can cache frequently used shared memory objects, for
273 * example objects used as RPC arguments. When secure world is idle this
280 * a1-6 Not used
285 * a1 Upper 32 bits of a 64-bit Shared memory cookie
286 * a2 Lower 32 bits of a 64-bit Shared memory cookie
287 * a3-7 Preserved
291 * a1-7 Preserved
295 * a1-7 Preserved
311 * Secure world can cache frequently used shared memory objects, for
312 * example objects used as RPC arguments. When secure world is idle this
314 * secure world isn't idle OPTEE_SMC_RETURN_EBUSY is returned.
318 * a1-6 Not used
323 * a1-7 Preserved
327 * a1-7 Preserved
334 * Query OP-TEE about number of supported threads
337 * threads OP-TEE supports. That is how many standard calls can be issued
338 * in parallel before OP-TEE will return OPTEE_SMC_RETURN_ETHREAD_LIMIT.
342 * a1-6 Not used
348 * a2-7 Preserved
352 * a1-7 Preserved
359 * Inform OP-TEE that normal world is able to receive asynchronous
364 * a1-6 Not used
369 * a1-7 Preserved
373 * a1-7 Preserved
383 * OP-TEE keeps a record of all posted values. When an interrupt is
386 * value is retrieved, it's cleared from the record in secure world.
393 * a1-6 Not used
404 * a3-7 Preserved
408 * a1-7 Preserved
414 * Notification that OP-TEE expects a yielding call to do some bottom half
434 * a1-3 Value of a1-3 when OPTEE_SMC_CALL_WITH_ARG returned
472 * a4-5 Not used
473 * a6-7 Resume information, must be preserved
477 * a1 Upper 32 bits of 64-bit physical pointer to allocated
480 * a2 Lower 32 bits of 64-bit physical pointer to allocated
484 * a4 Upper 32 bits of 64-bit Shared memory cookie used when freeing
486 * a5 Lower 32 bits of 64-bit Shared memory cookie used when freeing
488 * a6-7 Preserved
499 * a1 Upper 32 bits of 64-bit shared memory cookie belonging to this
501 * a2 Lower 32 bits of 64-bit shared memory cookie belonging to this
503 * a3-7 Resume information, must be preserved
507 * a1-2 Not used
508 * a3-7 Preserved
519 * a1-7 Resume information, must be preserved
523 * a1-7 Preserved
533 * - cmd the Request ID
534 * - ret return value of the request, filled in by normal world
535 * - num_params number of parameters for the request
536 * - params the parameters
537 * - param_attrs attributes of the parameters
541 * a1 Upper 32 bits of a 64-bit Shared memory cookie holding a
544 * a2 Lower 32 bits of a 64-bit Shared memory cookie holding a
547 * a3-7 Resume information, must be preserved
551 * a1-2 Not used
552 * a3-7 Preserved