Lines Matching +full:smc +full:- +full:id
1 /* SPDX-License-Identifier: GPL-2.0-only */
12 * This file provides common defines for ARM SMC Calling Convention as
16 * This code is up-to-date with version DEN 0028 C
101 /* KVM UID value: 28b46fb6-2ec5-11e9-a9ca-4b564d003a74 */
124 * this hypercall ID.
132 /* ptp_kvm counter type ID */
185 #define SMCCC_RET_NOT_SUPPORTED -1
186 #define SMCCC_RET_NOT_REQUIRED -2
187 #define SMCCC_RET_INVALID_PARAMETER -3
225 * struct arm_smccc_res - Result from SMC/HVC call
226 * @a0-a3 result values from registers 0 to 3
237 * struct arm_smccc_1_2_regs - Arguments for or Results from SMC/HVC call
238 * @a0-a17 argument values from registers 0 to 17
262 * arm_smccc_1_2_hvc() - make HVC calls
266 * This function is used to make HVC calls following SMC Calling Convention
276 * arm_smccc_1_2_smc() - make SMC calls
280 * This function is used to make SMC calls following SMC Calling Convention
282 * structure to registers prior to the SMC instruction. The return values
283 * are updated with the content from registers on return from the SMC
291 * struct arm_smccc_quirk - Contains quirk information
292 * @id: quirk identification
294 * @a6: Qualcomm quirk entry for returning post-smc call contents of a6
297 int id; member
304 * __arm_smccc_sve_check() - Set the SVE hint bit when doing SMC calls
313 * __arm_smccc_smc() - make SMC calls
314 * @a0-a7: arguments passed in registers 0 to 7
318 * This function is used to make SMC calls following SMC Calling Convention.
320 * to the SMC instruction. The return values are updated with the content
321 * from register 0 to 3 on return from the SMC instruction. An optional
340 * __arm_smccc_hvc() - make HVC calls
341 * @a0-a7: arguments passed in registers 0 to 7
345 * This function is used to make HVC calls following SMC Calling
367 #define SMCCC_SMC_INST "smc #0"
371 #include <asm/opcodes-sec.h>
372 #include <asm/opcodes-virt.h>
484 * arm_smccc_1_1_smc() - make an SMCCC v1.1 compliant SMC call
489 * @a0-a7: arguments passed in registers 0 to 7
492 * This macro is used to make SMC calls following SMC Calling Convention v1.1.
494 * to the SMC instruction. The return values are updated with the content
495 * from register 0 to 3 on return from the SMC instruction if not NULL.
500 * arm_smccc_1_1_hvc() - make an SMCCC v1.1 compliant HVC call
505 * @a0-a7: arguments passed in registers 0 to 7
508 * This macro is used to make HVC calls following SMC Calling Convention v1.1.
525 ___res->a0 = SMCCC_RET_NOT_SUPPORTED; \
529 * arm_smccc_1_1_invoke() - make an SMCCC v1.1 compliant call
534 * @a0-a7: arguments passed in registers 0 to 7
537 * This macro will make either an HVC call or an SMC call depending on the
538 * current SMCCC conduit. If no valid conduit is available then -1