diff options
Diffstat (limited to 'Board/EM/MeWrapper/Smbios131/Smbios131.h')
-rw-r--r-- | Board/EM/MeWrapper/Smbios131/Smbios131.h | 176 |
1 files changed, 176 insertions, 0 deletions
diff --git a/Board/EM/MeWrapper/Smbios131/Smbios131.h b/Board/EM/MeWrapper/Smbios131/Smbios131.h new file mode 100644 index 0000000..d8ac599 --- /dev/null +++ b/Board/EM/MeWrapper/Smbios131/Smbios131.h @@ -0,0 +1,176 @@ +//************************************************************************* +//************************************************************************* +//** ** +//** (C)Copyright 1985-2010, American Megatrends, Inc. ** +//** ** +//** All Rights Reserved. ** +//** ** +//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 ** +//** ** +//** Phone: (770)-246-8600 ** +//** ** +//************************************************************************* +//************************************************************************* +//********************************************************************** +// +// $Header: /Alaska/SOURCE/Modules/SharkBayRefCodes/ME/MeWrapper/Smbios131/Smbios131.h 1 2/08/12 1:07a Klzhan $ +// +// $Revision: 1 $ +// +// $Date: 2/08/12 1:07a $ +// +//********************************************************************** +// Revision History +// ---------------- +// $Log: /Alaska/SOURCE/Modules/SharkBayRefCodes/ME/MeWrapper/Smbios131/Smbios131.h $ +// +// 1 2/08/12 1:07a Klzhan +// Initial Check in +// +// 1 2/25/11 1:40a Klzhan +// Initial Check-in +// +// 2 12/16/10 3:58a Klzhan +// [TAG] EIP50237 +// [Category] Bug Fix +// [Severity] Important +// [Symptom] Txt Support is not been set in SMBIOS type 131 +// [RootCause] SETUP_CPU_FEATURES structure has been changed. +// [Solution] Include PlatformCPULib.h. +// [Files] Smbios131.c and Smbios131.h +// +// 1 12/03/10 5:09a Klzhan +// Initial Check-in. +// +// +//********************************************************************** + +//<AMI_FHDR_START> +//---------------------------------------------------------------------------- +// +// Name: Smbios131.h +// +// Description: Header file for SMbios131 module. +// +//---------------------------------------------------------------------------- +//<AMI_FHDR_END> +#include "Token.h" +#include <Tiano.h> +#include <Include\Protocol\SMBios.h> +#include <Include\Protocol\SmbiosGetFlashDataProtocol.h> +#include <AmtLib.h> +#include <MeLib.h> +#include "CpuFuncs.h" + +#include EFI_GUID_DEFINITION (MeBiosExtensionSetup) +#include EFI_GUID_DEFINITION (GlobalVariable) +#include EFI_PROTOCOL_DEFINITION (PciIo) +#include EFI_PROTOCOL_CONSUMER (PciRootBridgeIo) +#include EFI_PROTOCOL_DEPENDENCY (SaPlatformPolicy) +#include EFI_PROTOCOL_CONSUMER (Heci) +#include EFI_PROTOCOL_CONSUMER (TcgService) +#define MEBX_FILE_GUID \ + { \ + 0x7c81c66a, 0x4f11, 0x47ab, 0x82, 0xd3, 0x67, 0xc4, 0xd6, 0x35, 0xae, 0xd1 \ + } +#if VA_SUPPORT +#include EFI_PROTOCOL_DEFINITION(PlatformVaPolicy) +#endif + +#define vPro_Signature "vPro" + +#define EFI_MSR_IA32_FEATURE_CONTROL 0x3A +#define TXT_OPT_IN_VMX_AND_SMX_MSR_VALUE 0xFF03 +#define EFI_VA30_VERSION 0x0300 +#define EFI_VA26_VERSION 0x0206 + + + + +#define PciMeRegBase PCIEX_BASE_ADDRESS + (UINT32) (22 << 15) +#define FW_STATUS_REGISTER 0x40 + +// +// This is definition for SMBIOS Oem data type 0x81 +// +#pragma pack (1) +// +// This is definition for SMBIOS Oem data type 0x83 +// +typedef struct { + UINT32 VMXState : 1; //[0] VMX state (On/Off) + UINT32 SMXState : 1; //[1] SMX state (On/Off) + UINT32 LtTxtCap : 1; //[2] LT/TXT capability + UINT32 LtTxtEnabled : 1; //[3] LT/TXT Enabled state (Optional for vPro verification) + UINT32 VTxCap : 1; //[4] VT-x capability + UINT32 VTxEnabled : 1; //[5] VT-x Enabled state (Optional for vPro verification) + UINT32 Reserved : 26; //[31:6] Reserved, set to 0 +} CPU_CAP; + +typedef struct { + UINT32 FunctionNumber : 3; //[2:0] PCI Device Function Number + UINT32 DeviceNumber : 5; //[7:3] PCI Device Device Number + UINT32 BusNumber : 8; //[15:8] PCI Device Bus Number + UINT32 DeviceID : 16; //[31:16] Device Identification Number (DID): This field is the identifier of ICHx PCI device.DID will be set to 0xFF if not found. + UINT32 Reserved : 32; //[63:32] Reserved, must set to 0xFF +} PCH_CAP; + +typedef struct { + UINT32 FunctionNumber : 3; //[2:0] PCI Device Function Number of Wired LAN + UINT32 DeviceNumber : 5; //[7:3] PCI Device Device Number of Wired LAN + UINT32 BusNumber : 8; //[15:8] PCI Device Bus Number of Wired LAN + UINT32 DeviceID : 16; //[31:16] PCI Device Identifier (DID) of wired NIC. DID will be set to 0xFF if not found. + UINT16 Reserved1; //[47:32] Reserved for Wired NIC. + UINT32 wFunctionNumber : 3; //[51:48] PCI Device Function Number of Wireless LAN + UINT32 wDeviceNumber : 5; //[56:52] PCI Device Device Number of Wireless LAN + UINT32 wBusNumber : 8; //[64:57] PCI Device Bus Number of Wireless LAN + UINT32 wDeviceID : 16; //[80:65] PCI Device Identifier (DID) of Wireless NIC. DID will be set to 0xFF if not found. + UINT16 wReserved1; //[95:81] Reserved for Wireless NIC. +} NETWORK_DEV; + + +typedef struct { + UINT32 Reserved1 : 1; //[0] Reserved, must be set to 0 + UINT32 VTdSupport : 1; //[1] BIOS supports VT-d in BIOS setup screen (can be editable). + UINT32 TxtSupport : 1; //[2] BIOS supports TXT in BIOS setup screen (can be editable). + UINT32 Reserved2 : 1; //[3] Reserved, must be set to 0 + UINT32 MeSupport : 1; //[4] BIOS supports ME in BIOS setup screen (can be editable). + UINT32 VTxSupport : 1; //[5] BIOS supports VT-x in BIOS setup screen (can be editable). + // The PlaformDataInSpi & MaxVASupported moved from Bit 6 & 7 to 8, 9 + UINT32 TdtPbaSupport : 1; //[6] BIOS supports VT-d in BIOS setup screen (can be editable). + UINT32 TdtWwanSuport : 1; //[7] BIOS supports TXT in BIOS setup screen (can be editable). + UINT32 Reserved : 24; //[31:8] Reserved, must set to 0 +} BIOS_CAP; + +typedef struct { + SMBIOS_STRUCTURE_HEADER Header; + CPU_CAP CpuCapabilities; + UINT16 vMEBX_Major; + UINT16 vMEBX_Minor; + UINT16 vMEBX_HotFix; + UINT16 vMEBX_Build; + PCH_CAP PchCapabilities; + ME_CAP MeCapabilities; + UINT16 Reserved1[2]; + NETWORK_DEV NetworkDevice; + BIOS_CAP BiosCapabilities; + UINT8 vProSignature[4]; + UINT32 Reserved2; + UINT16 Zero; //terminator +} EFI_MISC_OEM_TYPE_0x83; + +#pragma pack () + +//************************************************************************* +//************************************************************************* +//** ** +//** (C)Copyright 1985-2010, American Megatrends, Inc. ** +//** ** +//** All Rights Reserved. ** +//** ** +//** 5555 Oakbrook Parkway, Suite 200, Norcross, GA 30093 ** +//** ** +//** Phone: (770)-246-8600 ** +//** ** +//************************************************************************* +//*************************************************************************
\ No newline at end of file |