Lines Matching +full:7 +full:- +full:bit
1 /* SPDX-License-Identifier: BSD-2-Clause */
3 * Copyright (c) 2015-2021, Linaro Limited
11 * This file is exported by OP-TEE and is in kept in sync between secure
70 * Normal cached memory (write-back), shareable for SMP systems and not
78 * 32-bit registers.
86 * 384fb3e0-e7f8-11e3-af63-0002a5d5c51b.
110 * Used by non-secure world to figure out which Trusted OS is installed.
113 * Returns UUID in a0-4 in the same way as OPTEE_SMC_CALLS_UID
123 * Used by non-secure world to figure out which version of the Trusted OS
127 * Returns revision in a0-1 in the same way as OPTEE_SMC_CALLS_REVISION
128 * described above. May optionally return a 32-bit build identifier in a2,
146 * 2. Non-secure interrupts should not be masked
154 * a1 Upper 32 bits of a 64-bit physical pointer to a struct optee_msg_arg
155 * a2 Lower 32 bits of a 64-bit physical pointer to a struct optee_msg_arg
158 * a4-6 Not used
163 * a1 Upper 32 bits of a 64-bit shared memory cookie
164 * a2 Lower 32 bits of a 64-bit shared memory cookie
167 * a4-6 Not used
172 * a1-3 Not used
173 * a4-7 Preserved
177 * a1-3 Preserved
178 * a4-7 Preserved
182 * a1-2 RPC parameters
183 * a3-7 Resume information, must be preserved
210 * Returns the Secure/Non-secure shared memory config.
214 * a1-6 Not used
223 * a4-7 Preserved
227 * a1-3 Not used
228 * a4-7 Preserved
230 #define OPTEE_SMC_FUNCID_GET_SHM_CONFIG 7
246 * a2 if a1 == OPTEE_SMC_L2CC_MUTEX_SET_ADDR, upper 32bit of a 64bit
248 * a3 if a1 == OPTEE_SMC_L2CC_MUTEX_SET_ADDR, lower 32bit of a 64bit
250 * a3-6 Not used
256 * a2 if a1 == OPTEE_SMC_L2CC_MUTEX_GET_ADDR, upper 32bit of a 64bit
258 * a3 if a1 == OPTEE_SMC_L2CC_MUTEX_GET_ADDR, lower 32bit of a 64bit
260 * a3-7 Preserved
266 * a1-7 Preserved
282 * a2-6 Not used
289 * a3 Bit[7:0]: Number of parameters needed for RPC to be supplied
292 * Bit[31:8]: Reserved (MBZ)
293 * a3-7 Preserved
298 * a2-7 Preserved
301 #define OPTEE_SMC_NSEC_CAP_UNIPROCESSOR BIT(0)
303 #define OPTEE_SMC_SEC_CAP_HAVE_RESERVED_SHM BIT(0)
305 #define OPTEE_SMC_SEC_CAP_UNREGISTERED_SHM BIT(1)
308 * secure world accepts command buffers located in any parts of non-secure RAM
310 #define OPTEE_SMC_SEC_CAP_DYNAMIC_SHM BIT(2)
312 #define OPTEE_SMC_SEC_CAP_VIRTUALIZATION BIT(3)
314 #define OPTEE_SMC_SEC_CAP_MEMREF_NULL BIT(4)
316 #define OPTEE_SMC_SEC_CAP_ASYNC_NOTIF BIT(5)
317 /* Secure world supports pre-allocating RPC arg struct */
318 #define OPTEE_SMC_SEC_CAP_RPC_ARG BIT(6)
335 * a1-6 Not used
340 * a1 Upper 32 bits of a 64-bit Shared memory cookie
341 * a2 Lower 32 bits of a 64-bit Shared memory cookie
342 * a3-7 Preserved
346 * a1-7 Preserved
350 * a1-7 Preserved
366 * a1-6 Not used
371 * a1-7 Preserved
375 * a1-7 Preserved
384 * OP-TEE in secure world is in charge of the release process of secondary
385 * cores. The Rich OS issue the this request to ask OP-TEE to boot up the
386 * secondary cores, go through the OP-TEE per-core initialization, and then
387 * switch to the Non-seCure world with the Rich OS provided entry address.
388 * The secondary cores enter Non-Secure world in SVC mode, with Thumb, FIQ,
394 * a2 Upper 32 bits of a 64-bit Non-Secure world entry physical address
395 * a3 Lower 32 bits of a 64-bit Non-Secure world entry physical address
396 * a4-7 Not used
400 * a1-7 Preserved
404 * a1-7 Preserved
408 * a1-7 Preserved
415 * Inform OP-TEE about a new virtual machine
418 * OP-TEE records client id of new virtual machine and prepares
419 * to receive requests from it. This call is available only if OP-TEE
425 * a2-6 Not used
431 * a1-7 Preserved
434 * a0 OPTEE_SMC_RETURN_ENOTAVAIL OP-TEE have no resources for
436 * a1-7 Preserved
444 * Inform OP-TEE about shutdown of a virtual machine
447 * OP-TEE will clean up all resources associated with this VM. This call is
448 * available only if OP-TEE was built with virtualization support.
453 * a2-6 Not used
459 * a1-7 Preserved
467 * Query OP-TEE about number of supported threads
470 * threads OP-TEE supports. That is how many standard calls can be issued
471 * in parallel before OP-TEE will return OPTEE_SMC_RETURN_ETHREAD_LIMIT.
475 * a1-6 Not used
481 * a2-7 Preserved
485 * a1-7 Preserved
492 * Inform OP-TEE that normal world is able to receive asynchronous
497 * a1-6 Not used
502 * a1-7 Preserved
506 * a1-7 Preserved
516 * OP-TEE keeps a record of all posted values. When an interrupt is
526 * a1-6 Not used
532 * a2 Bit[0]: OPTEE_SMC_ASYNC_NOTIF_VALUE_VALID if the value in a1 is
534 * a2 Bit[1]: OPTEE_SMC_ASYNC_NOTIF_VALUE_PENDING if another value is
536 * Bit[31:2]: MBZ
537 * a3-7 Preserved
541 * a1-7 Preserved
543 #define OPTEE_SMC_ASYNC_NOTIF_VALID BIT(0)
544 #define OPTEE_SMC_ASYNC_NOTIF_PENDING BIT(1)
547 * Notification that OP-TEE expects a yielding call to do some bottom half
567 * a1-3 Value of a1-3 when OPTEE_SMC_CALL_WITH_ARG returned
605 * a4-5 Not used
606 * a6-7 Resume information, must be preserved
610 * a1 Upper 32 bits of 64-bit physical pointer to allocated
613 * a2 Lower 32 bits of 64-bit physical pointer to allocated
617 * a4 Upper 32 bits of 64-bit Shared memory cookie used when freeing
619 * a5 Lower 32 bits of 64-bit Shared memory cookie used when freeing
621 * a6-7 Preserved
632 * a1 Upper 32 bits of 64-bit shared memory cookie belonging to this
634 * a2 Lower 32 bits of 64-bit shared memory cookie belonging to this
636 * a3-7 Resume information, must be preserved
640 * a1-2 Not used
641 * a3-7 Preserved
652 * a1-7 Resume information, must be preserved
656 * a1-7 Preserved
666 * - cmd the Request ID
667 * - ret return value of the request, filled in by normal world
668 * - num_params number of parameters for the request
669 * - params the parameters
670 * - param_attrs attributes of the parameters
674 * a1 Upper 32 bits of a 64-bit Shared memory cookie holding a
677 * a2 Lower 32 bits of a 64-bit Shared memory cookie holding a
680 * a3-7 Resume information, must be preserved
684 * a1-2 Not used
685 * a3-7 Preserved