//\r
+// Copyright (c) 2021, NUVIA Inc. All rights reserved.\r
// Copyright (c) 2016, Linaro Limited. All rights reserved.\r
//\r
// SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
#include <Base.h>\r
#include <Library/ArmSmcLib.h>\r
+#include <IndustryStandard/ArmStdSmc.h>\r
\r
VOID\r
ArmCallSmc (\r
- IN OUT ARM_SMC_ARGS *Args\r
+ IN OUT ARM_SMC_ARGS *Args\r
)\r
{\r
}\r
+\r
+/** Triggers an SMC call with 3 arguments.\r
+\r
+ @param Function The SMC function.\r
+ @param Arg1 Argument/result.\r
+ @param Arg2 Argument/result.\r
+ @param Arg3 Argument/result.\r
+\r
+ @return The SMC error code.\r
+**/\r
+UINTN\r
+ArmCallSmc3 (\r
+ IN UINTN Function,\r
+ IN OUT UINTN *Arg1 OPTIONAL,\r
+ IN OUT UINTN *Arg2 OPTIONAL,\r
+ IN OUT UINTN *Arg3 OPTIONAL\r
+ )\r
+{\r
+ return SMC_ARCH_CALL_NOT_SUPPORTED;\r
+}\r
+\r
+/** Trigger an SMC call with 2 arguments.\r
+\r
+ @param Function The SMC function.\r
+ @param Arg1 Argument/result.\r
+ @param Arg2 Argument/result.\r
+ @param Arg3 Result.\r
+\r
+ @return The SMC error code.\r
+\r
+**/\r
+UINTN\r
+ArmCallSmc2 (\r
+ IN UINTN Function,\r
+ IN OUT UINTN *Arg1 OPTIONAL,\r
+ IN OUT UINTN *Arg2 OPTIONAL,\r
+ OUT UINTN *Arg3 OPTIONAL\r
+ )\r
+{\r
+ return SMC_ARCH_CALL_NOT_SUPPORTED;\r
+}\r
+\r
+/** Trigger an SMC call with 1 argument.\r
+\r
+ @param Function The SMC function.\r
+ @param Arg1 Argument/result.\r
+ @param Arg2 Result.\r
+ @param Arg3 Result.\r
+\r
+ @return The SMC error code.\r
+\r
+**/\r
+UINTN\r
+ArmCallSmc1 (\r
+ IN UINTN Function,\r
+ IN OUT UINTN *Arg1 OPTIONAL,\r
+ OUT UINTN *Arg2 OPTIONAL,\r
+ OUT UINTN *Arg3 OPTIONAL\r
+ )\r
+{\r
+ return SMC_ARCH_CALL_NOT_SUPPORTED;\r
+}\r
+\r
+/** Trigger an SMC call with 0 arguments.\r
+\r
+ @param Function The SMC function.\r
+ @param Arg1 Result.\r
+ @param Arg2 Result.\r
+ @param Arg3 Result.\r
+\r
+ @return The SMC error code.\r
+\r
+**/\r
+UINTN\r
+ArmCallSmc0 (\r
+ IN UINTN Function,\r
+ OUT UINTN *Arg1 OPTIONAL,\r
+ OUT UINTN *Arg2 OPTIONAL,\r
+ OUT UINTN *Arg3 OPTIONAL\r
+ )\r
+{\r
+ return SMC_ARCH_CALL_NOT_SUPPORTED;\r
+}\r