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