]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/Library/SmmLib.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / MdePkg / Include / Library / SmmLib.h
CommitLineData
0bce7349 1/** @file\r
2 Library class name: SmmLib\r
0bce7349 3\r
9095d37b 4 SMM Library Services that abstracts both S/W SMI generation and detection.\r
0bce7349 5\r
9095d37b 6 Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
9344f092 7 SPDX-License-Identifier: BSD-2-Clause-Patent\r
0bce7349 8\r
9**/\r
10\r
11#ifndef __SMM_LIB_H__\r
12#define __SMM_LIB_H__\r
13\r
0bce7349 14/**\r
9095d37b 15 Triggers an SMI at boot time.\r
0bce7349 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
0bce7349 26/**\r
9095d37b 27 Triggers an SMI at run time.\r
0bce7349 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
0bce7349 38/**\r
9095d37b 39 Test if a boot time software SMI happened.\r
0bce7349 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
fae43d06 45 @retval FALSE No software SMI happened, or the software SMI was triggered at run time.\r
0bce7349 46\r
47**/\r
48BOOLEAN\r
49EFIAPI\r
50IsBootServiceSoftwareSmi (\r
51 VOID\r
52 );\r
53\r
0bce7349 54/**\r
9095d37b 55 Test if a run time software SMI happened.\r
0bce7349 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
fae43d06 61 @retval FALSE No software SMI happened or the software SMI was triggered at boot time.\r
0bce7349 62\r
63**/\r
64BOOLEAN\r
65EFIAPI\r
66IsRuntimeSoftwareSmi (\r
67 VOID\r
68 );\r
69\r
70/**\r
9095d37b
LG
71 Clear APM SMI Status Bit; Set the EOS bit.\r
72\r
0bce7349 73**/\r
74VOID\r
75EFIAPI\r
76ClearSmi (\r
77 VOID\r
78 );\r
2f88bd3a 79\r
0bce7349 80#endif\r