]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/Library/SmmLib.h
MdePkg: Clean up source files
[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
LG
6 Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
7 This program and the accompanying materials\r
8 are licensed and made available under the terms and conditions of the BSD License\r
9 which accompanies this distribution. The full text of the license may be found at\r
10 http://opensource.org/licenses/bsd-license.php\r
11\r
12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
0bce7349 14\r
15**/\r
16\r
17#ifndef __SMM_LIB_H__\r
18#define __SMM_LIB_H__\r
19\r
20\r
21/**\r
9095d37b 22 Triggers an SMI at boot time.\r
0bce7349 23\r
24 This function triggers a software SMM interrupt at boot time.\r
25\r
26**/\r
27VOID\r
28EFIAPI\r
29TriggerBootServiceSoftwareSmi (\r
30 VOID\r
31 );\r
32\r
33\r
34/**\r
9095d37b 35 Triggers an SMI at run time.\r
0bce7349 36\r
37 This function triggers a software SMM interrupt at run time.\r
38\r
39**/\r
40VOID\r
41EFIAPI\r
42TriggerRuntimeSoftwareSmi (\r
43 VOID\r
44 );\r
45\r
46\r
47/**\r
9095d37b 48 Test if a boot time software SMI happened.\r
0bce7349 49\r
50 This function tests if a software SMM interrupt happened. If a software SMM interrupt happened and\r
51 it was triggered at boot time, it returns TRUE. Otherwise, it returns FALSE.\r
52\r
53 @retval TRUE A software SMI triggered at boot time happened.\r
54 @retval FLASE No software SMI happened, or the software SMI was triggered at run time.\r
55\r
56**/\r
57BOOLEAN\r
58EFIAPI\r
59IsBootServiceSoftwareSmi (\r
60 VOID\r
61 );\r
62\r
63\r
64/**\r
9095d37b 65 Test if a run time software SMI happened.\r
0bce7349 66\r
67 This function tests if a software SMM interrupt happened. If a software SMM interrupt happened and\r
68 it was triggered at run time, it returns TRUE. Otherwise, it returns FALSE.\r
69\r
70 @retval TRUE A software SMI triggered at run time happened.\r
71 @retval FLASE No software SMI happened or the software SMI was triggered at boot time.\r
72\r
73**/\r
74BOOLEAN\r
75EFIAPI\r
76IsRuntimeSoftwareSmi (\r
77 VOID\r
78 );\r
79\r
80/**\r
9095d37b
LG
81 Clear APM SMI Status Bit; Set the EOS bit.\r
82\r
0bce7349 83**/\r
84VOID\r
85EFIAPI\r
86ClearSmi (\r
87 VOID\r
88 );\r
89#endif\r