Lines Matching +full:smc +full:- +full:id

1 /* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */
3 * Copyright (c) 2015-2021, Linaro Limited
8 #include <linux/arm-smccc.h>
19 * Function specified by SMC Calling convention.
28 * Normal cached memory (write-back), shareable for SMP systems and not
36 * 32-bit registers.
40 * Function specified by SMC Calling convention
44 * 384fb3e0-e7f8-11e3-af63-0002a5d5c51b.
54 * Function specified by SMC Calling convention
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,
112 * This SMC instructs EL3 to load a binary and execute it as the Trusted OS.
115 * a0 SMC Function ID, OPTEE_SMC_CALL_LOAD_IMAGE
121 * The payload is in the OP-TEE image format.
142 * 2. Non-secure interrupts should not be masked
149 * a0 SMC Function ID, OPTEE_SMC_CALL_WITH_ARG or OPTEE_SMC_CALL_WITH_RPC_ARG
150 * a1 Upper 32 bits of a 64-bit physical pointer to a struct optee_msg_arg
151 * a2 Lower 32 bits of a 64-bit physical pointer to a struct optee_msg_arg
154 * a4-6 Not used
155 * a7 Hypervisor Client ID register
158 * a0 SMC Function ID, OPTEE_SMC_CALL_WITH_REGD_ARG
159 * a1 Upper 32 bits of a 64-bit shared memory cookie
160 * a2 Lower 32 bits of a 64-bit shared memory cookie
163 * a4-6 Not used
164 * a7 Hypervisor Client ID register
168 * a1-3 Not used
169 * a4-7 Preserved
173 * a1-3 Preserved
174 * a4-7 Preserved
178 * a1-2 RPC parameters
179 * a3-7 Resume information, must be preserved
206 * Returns the Secure/Non-secure shared memory config.
209 * a0 SMC Function ID, OPTEE_SMC_GET_SHM_CONFIG
210 * a1-6 Not used
211 * a7 Hypervisor Client ID register
219 * a4-7 Preserved
223 * a1-3 Not used
224 * a4-7 Preserved
241 * a0 SMC Function ID, OPTEE_SMC_EXCHANGE_CAPABILITIES
243 * a2-6 Not used
244 * a7 Hypervisor Client ID register
254 * a4-7 Preserved
259 * a2-7 Preserved
270 * secure world accepts command buffers located in any parts of non-secure RAM
279 /* Secure world supports pre-allocating RPC arg struct */
305 * a0 SMC Function ID, OPTEE_SMC_DISABLE_SHM_CACHE
306 * a1-6 Not used
307 * a7 Hypervisor Client ID register
311 * a1 Upper 32 bits of a 64-bit Shared memory cookie
312 * a2 Lower 32 bits of a 64-bit Shared memory cookie
313 * a3-7 Preserved
317 * a1-7 Preserved
321 * a1-7 Preserved
343 * a0 SMC Function ID, OPTEE_SMC_ENABLE_SHM_CACHE
344 * a1-6 Not used
345 * a7 Hypervisor Client ID register
349 * a1-7 Preserved
353 * a1-7 Preserved
360 * Query OP-TEE about number of supported threads
363 * threads OP-TEE supports. That is how many standard calls can be issued
364 * in parallel before OP-TEE will return OPTEE_SMC_RETURN_ETHREAD_LIMIT.
367 * a0 SMC Function ID, OPTEE_SMC_GET_THREAD_COUNT
368 * a1-6 Not used
369 * a7 Hypervisor Client ID register
374 * a2-7 Preserved
378 * a1-7 Preserved
385 * Inform OP-TEE that normal world is able to receive asynchronous
389 * a0 SMC Function ID, OPTEE_SMC_ENABLE_ASYNC_NOTIF
390 * a1-6 Not used
391 * a7 Hypervisor Client ID register
395 * a1-7 Preserved
399 * a1-7 Preserved
409 * OP-TEE keeps a record of all posted values. When an interrupt is
418 * a0 SMC Function ID, OPTEE_SMC_GET_ASYNC_NOTIF_VALUE
419 * a1-6 Not used
420 * a7 Hypervisor Client ID register
430 * a3-7 Preserved
434 * a1-7 Preserved
440 * Notification that OP-TEE expects a yielding call to do some bottom half
459 * a0 SMC Function ID, OPTEE_SMC_CALL_RETURN_FROM_RPC
460 * a1-3 Value of a1-3 when OPTEE_SMC_CALL_WITH_ARG returned
498 * a4-5 Not used
499 * a6-7 Resume information, must be preserved
502 * a0 SMC Function ID, OPTEE_SMC_CALL_RETURN_FROM_RPC.
503 * a1 Upper 32 bits of 64-bit physical pointer to allocated
506 * a2 Lower 32 bits of 64-bit physical pointer to allocated
510 * a4 Upper 32 bits of 64-bit Shared memory cookie used when freeing
512 * a5 Lower 32 bits of 64-bit Shared memory cookie used when freeing
514 * a6-7 Preserved
525 * a1 Upper 32 bits of 64-bit shared memory cookie belonging to this
527 * a2 Lower 32 bits of 64-bit shared memory cookie belonging to this
529 * a3-7 Resume information, must be preserved
532 * a0 SMC Function ID, OPTEE_SMC_CALL_RETURN_FROM_RPC.
533 * a1-2 Not used
534 * a3-7 Preserved
545 * a1-7 Resume information, must be preserved
548 * a0 SMC Function ID, OPTEE_SMC_CALL_RETURN_FROM_RPC.
549 * a1-7 Preserved
559 * - cmd the Request ID
560 * - ret return value of the request, filled in by normal world
561 * - num_params number of parameters for the request
562 * - params the parameters
563 * - param_attrs attributes of the parameters
567 * a1 Upper 32 bits of a 64-bit Shared memory cookie holding a
570 * a2 Lower 32 bits of a 64-bit Shared memory cookie holding a
573 * a3-7 Resume information, must be preserved
576 * a0 SMC Function ID, OPTEE_SMC_CALL_RETURN_FROM_RPC.
577 * a1-2 Not used
578 * a3-7 Preserved