mirror of https://github.com/acidanthera/audk.git
44 lines
1.4 KiB
C
44 lines
1.4 KiB
C
/** @file
|
|
The file provides the protocol that disables the behavior that all memory
|
|
gets accepted at ExitBootServices(). This protocol is only meant to be called
|
|
by the OS loader, and not EDK2 itself. The SEV naming is due to the
|
|
coincidence that only SEV-SNP needs this protocol, since SEV-SNP Linux
|
|
support was released before it had support for unaccepted memory. The
|
|
technology enablement thus does not strictly imply support for the unaccepted
|
|
memory type.
|
|
|
|
Copyright (c) 2023, Google LLC. All rights reserved.<BR>
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
**/
|
|
|
|
#ifndef SEV_MEMORY_ACCEPTANCE_H_
|
|
#define SEV_MEMORY_ACCEPTANCE_H_
|
|
|
|
#define OVMF_SEV_MEMORY_ACCEPTANCE_PROTOCOL_GUID \
|
|
{0xc5a010fe, \
|
|
0x38a7, \
|
|
0x4531, \
|
|
{0x8a, 0x4a, 0x05, 0x00, 0xd2, 0xfd, 0x16, 0x49}}
|
|
|
|
typedef struct _OVMF_SEV_MEMORY_ACCEPTANCE_PROTOCOL
|
|
OVMF_SEV_MEMORY_ACCEPTANCE_PROTOCOL;
|
|
|
|
/**
|
|
@param This A pointer to a OVMF_SEV_MEMORY_ACCEPTANCE_PROTOCOL.
|
|
**/
|
|
typedef
|
|
EFI_STATUS
|
|
(EFIAPI *OVMF_SEV_ALLOW_UNACCEPTED_MEMORY)(
|
|
IN OVMF_SEV_MEMORY_ACCEPTANCE_PROTOCOL *This
|
|
);
|
|
|
|
///
|
|
/// The OVMF_SEV_MEMORY_ACCEPTANCE_PROTOCOL allows the OS loader to
|
|
/// indicate to EDK2 that ExitBootServices should not accept all memory.
|
|
///
|
|
struct _OVMF_SEV_MEMORY_ACCEPTANCE_PROTOCOL {
|
|
OVMF_SEV_ALLOW_UNACCEPTED_MEMORY AllowUnacceptedMemory;
|
|
};
|
|
|
|
#endif
|