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