mirror of https://github.com/acidanthera/audk.git
UEFI231 spec compliance:
UEFI231 defines EFI_SMM_COMMUNICATION_ACPI_TABLE. We should move it from Pi/ dir to Uefi/ dir. UEFI231 defines EFI_SMM_COMMUNICATE_HEADER. We should move it from Protocol/SmmCommunication.h to Uefi/ dir. The original file will still include the new data structure to keep compatibility. signed-off-by: jyao1 reviewed-by: rsun3 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12724 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
3a4b9eba07
commit
96aace827e
|
@ -17,12 +17,4 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|||
|
||||
#include <Uefi/UefiAcpiDataTable.h>
|
||||
|
||||
#pragma pack(1)
|
||||
typedef struct {
|
||||
EFI_ACPI_DATA_TABLE UefiAcpiDataTable;
|
||||
UINT32 SwSmiNumber;
|
||||
UINT64 BufferPtrAddress;
|
||||
} EFI_SMM_COMMUNICATION_ACPI_TABLE;
|
||||
#pragma pack()
|
||||
|
||||
#endif
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
This protocol provides a means of communicating between drivers outside of SMM and SMI
|
||||
handlers inside of SMM.
|
||||
|
||||
Copyright (c) 2009, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -18,30 +18,16 @@
|
|||
#ifndef _SMM_COMMUNICATION_H_
|
||||
#define _SMM_COMMUNICATION_H_
|
||||
|
||||
//
|
||||
// Need include this header file for EFI_SMM_COMMUNICATE_HEADER data structure.
|
||||
//
|
||||
#include <Uefi/UefiAcpiDataTable.h>
|
||||
|
||||
#define EFI_SMM_COMMUNICATION_PROTOCOL_GUID \
|
||||
{ \
|
||||
0xc68ed8e2, 0x9dc6, 0x4cbd, { 0x9d, 0x94, 0xdb, 0x65, 0xac, 0xc5, 0xc3, 0x32 } \
|
||||
}
|
||||
|
||||
///
|
||||
/// To avoid confusion in interpreting frames, the communication buffer should always
|
||||
/// begin with EFI_SMM_COMMUNICATE_HEADER
|
||||
///
|
||||
typedef struct {
|
||||
///
|
||||
/// Allows for disambiguation of the message format.
|
||||
///
|
||||
EFI_GUID HeaderGuid;
|
||||
///
|
||||
/// Describes the size of Data (in bytes) and does not include the size of the header.
|
||||
///
|
||||
UINTN MessageLength;
|
||||
///
|
||||
/// Designates an array of bytes that is MessageLength in size.
|
||||
///
|
||||
UINT8 Data[1];
|
||||
} EFI_SMM_COMMUNICATE_HEADER;
|
||||
|
||||
typedef struct _EFI_SMM_COMMUNICATION_PROTOCOL EFI_SMM_COMMUNICATION_PROTOCOL;
|
||||
|
||||
/**
|
||||
|
|
|
@ -23,6 +23,32 @@ typedef struct {
|
|||
GUID Identifier;
|
||||
UINT16 DataOffset;
|
||||
} EFI_ACPI_DATA_TABLE;
|
||||
|
||||
typedef struct {
|
||||
EFI_ACPI_DATA_TABLE UefiAcpiDataTable;
|
||||
UINT32 SwSmiNumber;
|
||||
UINT64 BufferPtrAddress;
|
||||
} EFI_SMM_COMMUNICATION_ACPI_TABLE;
|
||||
|
||||
///
|
||||
/// To avoid confusion in interpreting frames, the communication buffer should always
|
||||
/// begin with EFI_SMM_COMMUNICATE_HEADER
|
||||
///
|
||||
typedef struct {
|
||||
///
|
||||
/// Allows for disambiguation of the message format.
|
||||
///
|
||||
EFI_GUID HeaderGuid;
|
||||
///
|
||||
/// Describes the size of Data (in bytes) and does not include the size of the header.
|
||||
///
|
||||
UINTN MessageLength;
|
||||
///
|
||||
/// Designates an array of bytes that is MessageLength in size.
|
||||
///
|
||||
UINT8 Data[1];
|
||||
} EFI_SMM_COMMUNICATE_HEADER;
|
||||
|
||||
#pragma pack()
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue