]>
Commit | Line | Data |
---|---|---|
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 | |
27 | VOID\r | |
28 | EFIAPI\r | |
29 | TriggerBootServiceSoftwareSmi (\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 | |
40 | VOID\r | |
41 | EFIAPI\r | |
42 | TriggerRuntimeSoftwareSmi (\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 | |
57 | BOOLEAN\r | |
58 | EFIAPI\r | |
59 | IsBootServiceSoftwareSmi (\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 | |
74 | BOOLEAN\r | |
75 | EFIAPI\r | |
76 | IsRuntimeSoftwareSmi (\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 |
84 | VOID\r | |
85 | EFIAPI\r | |
86 | ClearSmi (\r | |
87 | VOID\r | |
88 | );\r | |
89 | #endif\r |