]> git.proxmox.com Git - mirror_edk2.git/blame_incremental - MdePkg/Include/Library/SmmLib.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / MdePkg / Include / Library / SmmLib.h
... / ...
CommitLineData
1/** @file\r
2 Library class name: SmmLib\r
3\r
4 SMM Library Services that abstracts both S/W SMI generation and detection.\r
5\r
6 Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
7 SPDX-License-Identifier: BSD-2-Clause-Patent\r
8\r
9**/\r
10\r
11#ifndef __SMM_LIB_H__\r
12#define __SMM_LIB_H__\r
13\r
14/**\r
15 Triggers an SMI at boot time.\r
16\r
17 This function triggers a software SMM interrupt at boot time.\r
18\r
19**/\r
20VOID\r
21EFIAPI\r
22TriggerBootServiceSoftwareSmi (\r
23 VOID\r
24 );\r
25\r
26/**\r
27 Triggers an SMI at run time.\r
28\r
29 This function triggers a software SMM interrupt at run time.\r
30\r
31**/\r
32VOID\r
33EFIAPI\r
34TriggerRuntimeSoftwareSmi (\r
35 VOID\r
36 );\r
37\r
38/**\r
39 Test if a boot time software SMI happened.\r
40\r
41 This function tests if a software SMM interrupt happened. If a software SMM interrupt happened and\r
42 it was triggered at boot time, it returns TRUE. Otherwise, it returns FALSE.\r
43\r
44 @retval TRUE A software SMI triggered at boot time happened.\r
45 @retval FALSE No software SMI happened, or the software SMI was triggered at run time.\r
46\r
47**/\r
48BOOLEAN\r
49EFIAPI\r
50IsBootServiceSoftwareSmi (\r
51 VOID\r
52 );\r
53\r
54/**\r
55 Test if a run time software SMI happened.\r
56\r
57 This function tests if a software SMM interrupt happened. If a software SMM interrupt happened and\r
58 it was triggered at run time, it returns TRUE. Otherwise, it returns FALSE.\r
59\r
60 @retval TRUE A software SMI triggered at run time happened.\r
61 @retval FALSE No software SMI happened or the software SMI was triggered at boot time.\r
62\r
63**/\r
64BOOLEAN\r
65EFIAPI\r
66IsRuntimeSoftwareSmi (\r
67 VOID\r
68 );\r
69\r
70/**\r
71 Clear APM SMI Status Bit; Set the EOS bit.\r
72\r
73**/\r
74VOID\r
75EFIAPI\r
76ClearSmi (\r
77 VOID\r
78 );\r
79\r
80#endif\r