]> git.proxmox.com Git - mirror_edk2.git/blame - ArmPkg/Include/Library/ArmSmcLib.h
ArmPkg: Apply uncrustify changes
[mirror_edk2.git] / ArmPkg / Include / Library / ArmSmcLib.h
CommitLineData
eac42a51 1/** @file\r
2*\r
b4e53e38 3* Copyright (c) 2012-2014, ARM Limited. All rights reserved.\r
eac42a51 4*\r
4059386c 5* SPDX-License-Identifier: BSD-2-Clause-Patent\r
eac42a51 6*\r
7**/\r
8\r
cc15a619
PG
9#ifndef ARM_SMC_LIB_H_\r
10#define ARM_SMC_LIB_H_\r
eac42a51 11\r
b4e53e38
OM
12/**\r
13 * The size of the SMC arguments are different between AArch64 and AArch32.\r
14 * The native size is used for the arguments.\r
15 */\r
16typedef struct {\r
429309e0
MK
17 UINTN Arg0;\r
18 UINTN Arg1;\r
19 UINTN Arg2;\r
20 UINTN Arg3;\r
21 UINTN Arg4;\r
22 UINTN Arg5;\r
23 UINTN Arg6;\r
24 UINTN Arg7;\r
b4e53e38 25} ARM_SMC_ARGS;\r
eac42a51 26\r
b4e53e38
OM
27/**\r
28 Trigger an SMC call\r
eac42a51 29\r
b4e53e38
OM
30 SMC calls can take up to 7 arguments and return up to 4 return values.\r
31 Therefore, the 4 first fields in the ARM_SMC_ARGS structure are used\r
32 for both input and output values.\r
eac42a51 33\r
b4e53e38 34**/\r
eac42a51 35VOID\r
b4e53e38 36ArmCallSmc (\r
429309e0 37 IN OUT ARM_SMC_ARGS *Args\r
eac42a51 38 );\r
39\r
cc15a619 40#endif // ARM_SMC_LIB_H_\r