diff options
author | raywu <raywu@aaeon.com.tw> | 2018-09-13 16:11:56 +0800 |
---|---|---|
committer | raywu <raywu@aaeon.com.tw> | 2018-09-13 16:11:56 +0800 |
commit | 31bb486c913795c8b67d1c4dbaae2bdec4943fc9 (patch) | |
tree | f0e04ad6fe983d8aa11f0f8a808518e39ab408f1 /Core/EM/SLP20/SlpSupport.h | |
parent | 465bdc2f8b32bb4cc1ac2c420086ec79ccbd5f78 (diff) | |
download | zprj-31bb486c913795c8b67d1c4dbaae2bdec4943fc9.tar.xz |
SLP1.0 / SLP2.0 / Default Password / Logo / Fix Boot Order
Diffstat (limited to 'Core/EM/SLP20/SlpSupport.h')
-rw-r--r-- | Core/EM/SLP20/SlpSupport.h | 207 |
1 files changed, 207 insertions, 0 deletions
diff --git a/Core/EM/SLP20/SlpSupport.h b/Core/EM/SLP20/SlpSupport.h new file mode 100644 index 0000000..fd44e5d --- /dev/null +++ b/Core/EM/SLP20/SlpSupport.h @@ -0,0 +1,207 @@ +//**************************************************************************** +//**************************************************************************** +//** ** +//** (C)Copyright 1985-2011, American Megatrends, Inc. ** +//** ** +//** All Rights Reserved. ** +//** ** +//** 5555 Oakbrook Pkwy, Suite 200, Norcross, GA 30093 ** +//** ** +//** Phone (770)-246-8600 ** +//** ** +//**************************************************************************** +//**************************************************************************** + +//**************************************************************************** +// $Header: /Alaska/BIN/Modules/SLP/SlpSupport.h 4 8/01/11 3:26p Vyacheslava $ +// +// $Revision: 4 $ +// +// $Date: 8/01/11 3:26p $ +//**************************************************************************** +// Revision History +// ---------------- +// $Log: /Alaska/BIN/Modules/SLP/SlpSupport.h $ +// +// 4 8/01/11 3:26p Vyacheslava +// [TAG] EIP64110 +// [Category] Spec Update +// [Severity] Normal +// [Description] This file has been updated to be compliant with PI 1.2, +// and UEFI 2.3.1 specifications. +// +// 3 7/01/11 12:00p Vyacheslava +// [TAG] EIP63678 +// [Category] New Feature +// [Description] Preserve the OEM Activation SLIC during the BIOS +// recovery path. +// [Files] SlpSupport.sdl +// SlpSupport.mak +// SlpSupport.c +// SlpSupport.dxs +// SlpSupport.h +// SlpSupport.cif +// +// 2 8/25/10 11:45a Vyacheslava +// Changed comments for better representation in the CHM file. +// +// 1 5/18/10 4:11p Vyacheslava +// +// +//**************************************************************************** +//<AMI_FHDR_START> +// +// Name: SlpSupport.h +// +// Description: SlpSupport Header file. +// +//<AMI_FHDR_END> +//**************************************************************************** + +#ifndef __SLP_SUPPORT__H__ +#define __SLP_SUPPORT__H__ +#ifdef __cplusplus +extern "C" { +#endif + +//------------------------------------------------------------------------ + +#include <EFI.h> +#include <Token.h> +#include <Acpi.h> + +//------------------------------------------------------------------------ + +#define SLIC_SIG 0x43494c53 //"SLIC" Microsoft System Locked Preinstallation Table + +#define OEM_SLP_PUBLIC_KEY_GUID \ + { 0x996aa1e0, 0x1e8c, 0x4f36, 0xb5, 0x19, 0xa1, 0x70, 0xa2, 0x06, 0xfc, 0x14 } + +#define OEM_SLP_MARKER_GUID \ + { 0x69009842, 0x63f2, 0x43db, 0x96, 0x4b, 0xef, 0xad, 0x1c, 0x39, 0xec, 0x85 } + +#define FLASH_UPPER_ADDRESS 0xFFFFFFFF +#define FLASH_DEVICE_BASE_ADDRESS (FLASH_UPPER_ADDRESS-FLASH_SIZE+1) + +//------------------------------------------------------------------------ + +#pragma pack (1) + +//<AMI_SHDR_START> +//---------------------------------------------------------------------------- +// +// Name: OEM_PUBLIC_KEY_STRUCTURE +// +// Description: This structure comes out of the document: +// OEM Activation version 2.0 for M$ Windows Vista (tm) Operating System. +// +// Fields: +// Name Type Description +// ------------------------------------------------------------------ +// StructType UINT32 0x00000000 = PubKey Structure. +// LicensingData UINT32 Length, in bytes, of OEM pub key struct (156). +// bType UINT8 Public Key Type [PUBLICKEYBLOB (6)]. +// bVersion UINT8 Version, currently 2 (7/27/2006). +// Reserved UINT16 Zero. +// aiKeyAlg UINT32 Key Algorithm. [CALG_RSA_SIGN (0x00002400)]. +// Magic UINT32 bytes: 'RSA1'. +// BitLen UINT32 1024 converted to hex. +// Pubexp UINT32 Exponent of Public Key, usually 257 converted to hex. +// Modulus UINT8 Array. Modulus, modulues of the public key 128 bytes. +// +//---------------------------------------------------------------------------- +//<AMI_SHDR_END> + +typedef struct { + UINT32 StructType; + UINT32 LicensingData; + UINT8 bType; + UINT8 bVersion; + UINT16 Reserved; + UINT32 aiKeyAlg; + UINT32 Magic; + UINT32 Bitlen; + UINT32 Pubexp; + UINT8 Modulus[128]; +} OEM_PUBLIC_KEY_STRUCTURE; + +//<AMI_SHDR_START> +//---------------------------------------------------------------------------- +// +// Name: WINDOWS_MARKER_STRUCTURE +// +// Description: This structure comes out of the document: +// OEM Activation version 2.0 for M$ Windows Vista (tm) Operating System. +// +// Fields: +// Name Type Description +// ------------------------------------------------------------------ +// StructType UINT32 0x00000001 = Windows marker structure +// LicensingData UINT32 Length, in bytes of Windows Marker (182) +// dwVersion UINT32 Version of the Windows Marker (0x0002000) +// sOEMID UINT8 The OEMID value from XSDT and RSDT (must match). (6 bytes) +// sOEMTABLEID UINT8 the OEMTABLEID from XSDT and RSDT (must match). (8 bytes) +// sWindowsFlag UINT8 'WINDOWS ' (notice trailing space, not null terminated). (8 bytes) +// Reserved UINT8 Reserved for future use. (20 bytes) +// Signature UINT8 SHA256 Signature from the Windows Marker. (128 bytes) +// +//---------------------------------------------------------------------------- +//<AMI_SHDR_END> + +typedef struct { + UINT32 StructType; + UINT32 LicensingData; + UINT32 dwVersion; + UINT8 sOEMID[6]; + UINT8 sOEMTABLEID[8]; + UINT8 sWindowsFlag[8]; + UINT8 Reserved[20]; + UINT8 Signature[128]; +} WINDOWS_MARKER_STRUCTURE; + +//<AMI_SHDR_START> +//---------------------------------------------------------------------------- +// +// Name: EFI_ACPI_SLP +// +// Description: This structure comes out of the document: +// OEM Activation version 2.0 for M$ Windows Vista (tm) Operating System. +// +// Fields: +// Name Type Description +// ------------------------------------------------------------------ +// Header EFI_ACPI_DESCRIPTION_HEADER Common ACPI table header +// PubKey OEM_PUBLIC_KEY_STRUCTURE See above for description +// WinMarker WINDOWS_MARKER_STRUCTURE See above for description +// +//---------------------------------------------------------------------------- +//<AMI_SHDR_END> + +typedef struct { + ACPI_HDR Header; + OEM_PUBLIC_KEY_STRUCTURE PubKey; + WINDOWS_MARKER_STRUCTURE WinMarker; +} EFI_ACPI_SLP; + +#pragma pack() + + +/****** DO NOT WRITE BELOW THIS LINE *******/ +#ifdef __cplusplus +} +#endif +#endif + +//**************************************************************************** +//**************************************************************************** +//** ** +//** (C)Copyright 1985-2011, American Megatrends, Inc. ** +//** ** +//** All Rights Reserved. ** +//** ** +//** 5555 Oakbrook Pkwy, Suite 200, Norcross, GA 30093 ** +//** ** +//** Phone (770)-246-8600 ** +//** ** +//**************************************************************************** +//**************************************************************************** |