]> git.proxmox.com Git - mirror_edk2.git/blame - OvmfPkg/SmmControl2Dxe/SmiFeatures.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / OvmfPkg / SmmControl2Dxe / SmiFeatures.h
CommitLineData
a316d7ac
LE
1/**@file\r
2 Negotiate SMI features with QEMU, and configure UefiCpuPkg/PiSmmCpuDxeSmm\r
3 accordingly.\r
4\r
5 Copyright (C) 2016-2017, Red Hat, Inc.\r
6\r
b26f0cf9 7 SPDX-License-Identifier: BSD-2-Clause-Patent\r
a316d7ac
LE
8**/\r
9\r
10#ifndef __SMI_FEATURES_H__\r
11#define __SMI_FEATURES_H__\r
12\r
13#include <Protocol/S3SaveState.h>\r
14\r
15/**\r
16 Negotiate SMI features with QEMU.\r
17\r
18 @retval FALSE If SMI feature negotiation is not supported by QEMU. This is\r
19 not an error, it just means that SaveSmiFeatures() should not\r
20 be called.\r
21\r
22 @retval TRUE SMI feature negotiation is supported, and it has completed\r
23 successfully as well. (Failure to negotiate is a fatal error\r
24 and the function never returns in that case.)\r
25**/\r
26BOOLEAN\r
27NegotiateSmiFeatures (\r
28 VOID\r
29 );\r
30\r
31/**\r
32 Append a boot script fragment that will re-select the previously negotiated\r
33 SMI features during S3 resume.\r
a316d7ac
LE
34**/\r
35VOID\r
36SaveSmiFeatures (\r
36a6aa6c 37 VOID\r
a316d7ac
LE
38 );\r
39\r
40#endif\r