Lines Matching +full:smc +full:- +full:id
1 /* SPDX-License-Identifier: GPL-2.0-only */
13 * This file provides common defines for ARM SMC Calling Convention as
17 * This code is up-to-date with version DEN 0028 C
109 /* KVM UID value: 28b46fb6-2ec5-11e9-a9ca-4b564d003a74 */
196 * this hypercall ID.
228 /* ptp_kvm counter type ID */
281 #define SMCCC_RET_NOT_SUPPORTED -1
282 #define SMCCC_RET_NOT_REQUIRED -2
283 #define SMCCC_RET_INVALID_PARAMETER -3
321 * Returns the SOC ID version.
330 * Returns the SOC ID revision.
337 * struct arm_smccc_res - Result from SMC/HVC call
338 * @a0-a3 result values from registers 0 to 3
349 * struct arm_smccc_1_2_regs - Arguments for or Results from SMC/HVC call
350 * @a0-a17 argument values from registers 0 to 17
374 * arm_smccc_1_2_hvc() - make HVC calls
378 * This function is used to make HVC calls following SMC Calling Convention
388 * arm_smccc_1_2_smc() - make SMC calls
392 * This function is used to make SMC calls following SMC Calling Convention
394 * structure to registers prior to the SMC instruction. The return values
395 * are updated with the content from registers on return from the SMC
403 * struct arm_smccc_quirk - Contains quirk information
404 * @id: quirk identification
406 * @a6: Qualcomm quirk entry for returning post-smc call contents of a6
409 int id; member
416 * __arm_smccc_smc() - make SMC calls
417 * @a0-a7: arguments passed in registers 0 to 7
421 * This function is used to make SMC calls following SMC Calling Convention.
423 * to the SMC instruction. The return values are updated with the content
424 * from register 0 to 3 on return from the SMC instruction. An optional
443 * __arm_smccc_hvc() - make HVC calls
444 * @a0-a7: arguments passed in registers 0 to 7
448 * This function is used to make HVC calls following SMC Calling
470 #define SMCCC_SMC_INST "smc #0"
474 #include <asm/opcodes-sec.h>
475 #include <asm/opcodes-virt.h>
562 * arm_smccc_1_1_smc() - make an SMCCC v1.1 compliant SMC call
567 * @a0-a7: arguments passed in registers 0 to 7
570 * This macro is used to make SMC calls following SMC Calling Convention v1.1.
572 * to the SMC instruction. The return values are updated with the content
573 * from register 0 to 3 on return from the SMC instruction if not NULL.
578 * arm_smccc_1_1_hvc() - make an SMCCC v1.1 compliant HVC call
583 * @a0-a7: arguments passed in registers 0 to 7
586 * This macro is used to make HVC calls following SMC Calling Convention v1.1.
607 ___res->a0 = SMCCC_RET_NOT_SUPPORTED; \
611 * arm_smccc_1_1_invoke() - make an SMCCC v1.1 compliant call
616 * @a0-a7: arguments passed in registers 0 to 7
619 * This macro will make either an HVC call or an SMC call depending on the
620 * current SMCCC conduit. If no valid conduit is available then -1