OemActivation: Data Structures

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • Data Structures
  • Data Structure Index
Data Structures
Here are the data structures with brief descriptions:
o C _BIOS_OEM_DATA
o C _EFI_ACPI_MSDM_TABLE
o C _EFI_OA3_MSDM_STRUCTURE
o C _OA1_STRUC
o C EFI_ACPI_SLP
o C OEM_PUBLIC_KEY_STRUCTURE
\ C WINDOWS_MARKER_STRUCTURE
Generated on Thu Dec 10 2020 11:18:42 for OemActivation by doxygen 1.8.6


OemActivation: _BIOS_OEM_DATA Struct Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • Data Structures
  • Data Structure Index
Data Fields
_BIOS_OEM_DATA Struct Reference

#include <OA1.h>

Data Fields

EFI_GUID | Guid
CHAR8 | Identifier [6]
UINT16 | Flag
UINT16 | Size
UINT8 | Data [OEM_DATA_SPACE_SIZE]

Detailed Description

This structure comes out of the AMI Utility Specification.

Fields:

Name Type Description

Guid EFI_GUID Firmware Section GUID Identifier CHAR8 Identifier String "$ODB$" Flag UINT16 Data Flag Size UINT16 Data Size Data UINT8 Data Buffer (OEM OA 1.0 String)

The documentation for this struct was generated from the following file:
  • AmiModulePkg/OemActivation/OA1/OA1.h


OemActivation: _EFI_ACPI_MSDM_TABLE Struct Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • Data Structures
  • Data Structure Index
Data Fields
_EFI_ACPI_MSDM_TABLE Struct Reference

#include <OA3.h>

Data Fields

EFI_ACPI_DESCRIPTION_HEADER | Header
UINT32 | Version
UINT32 | Reserved
UINT32 | DataType
UINT32 | DataReserved
UINT32 | DataLength
UINT8 | Data [29]

Detailed Description

This structure comes out of the document "M$ Digital Marker Pilot"

Fields:

Name Length Description

Header - Standard ACPI header Version 4 0x1 Reserved 4 0x0 DataType 4 0x1 DataReserved 4 0x0 DataLength 4 0x1D Data 29 5x5 Product Key, including "-" (BH3RN-B7FDM-C7WGT-4CR4X-6CKHM)

The documentation for this struct was generated from the following file:
  • AmiModulePkg/OemActivation/OA3/OA3.h


OemActivation: _EFI_OA3_MSDM_STRUCTURE Struct Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • Data Structures
  • Data Structure Index
Data Fields
_EFI_OA3_MSDM_STRUCTURE Struct Reference

Data Fields

EFI_PHYSICAL_ADDRESS | XsdtAddress
EFI_PHYSICAL_ADDRESS | MsdmAddress
EFI_PHYSICAL_ADDRESS | ProductKeyAddress
The documentation for this struct was generated from the following file:
  • AmiModulePkg/OemActivation/OA3/OA3.h


OemActivation: _OA1_STRUC Struct Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • Data Structures
  • Data Structure Index
Data Fields
_OA1_STRUC Struct Reference

Data Fields

CHAR8 | Signature [6]
UINT16 | Version
UINT16 | Size
CHAR8 | String [sizeof(CONVERT_TO_STRING(OA1_STRING))]
UINT8 | Padding [OEM_DATA_SPACE_SIZE-sizeof(CONVERT_TO_STRING(OA1_STRING))]
The documentation for this struct was generated from the following file:
  • AmiModulePkg/OemActivation/OA1/OA1.h


OemActivation: EFI_ACPI_SLP Struct Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • Data Structures
  • Data Structure Index
Data Fields
EFI_ACPI_SLP Struct Reference

#include <OA2.h>

Data Fields

EFI_ACPI_DESCRIPTION_HEADER | Header
OEM_PUBLIC_KEY_STRUCTURE | PubKey
WINDOWS_MARKER_STRUCTURE | WinMarker

Detailed 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

The documentation for this struct was generated from the following file:
  • AmiModulePkg/OemActivation/OA2/OA2.h


OemActivation: OEM_PUBLIC_KEY_STRUCTURE Struct Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • Data Structures
  • Data Structure Index
Data Fields
OEM_PUBLIC_KEY_STRUCTURE Struct Reference

#include <OA2.h>

Data Fields

UINT32 | StructType
UINT32 | LicensingData
UINT8 | bType
UINT8 | bVersion
UINT16 | Reserved
UINT32 | aiKeyAlg
UINT32 | Magic
UINT32 | Bitlen
UINT32 | Pubexp
UINT8 | Modulus [128]

Detailed 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.

The documentation for this struct was generated from the following file:
  • AmiModulePkg/OemActivation/OA2/OA2.h


OemActivation: WINDOWS_MARKER_STRUCTURE Struct Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • Data Structures
  • Data Structure Index
Data Fields
WINDOWS_MARKER_STRUCTURE Struct Reference

#include <OA2.h>

Data Fields

UINT32 | StructType
UINT32 | LicensingData
UINT32 | dwVersion
UINT8 | sOEMID [6]
UINT8 | sOEMTABLEID [8]
UINT8 | sWindowsFlag [8]
UINT8 | Reserved [20]
UINT8 | Signature [128]

Detailed 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)

The documentation for this struct was generated from the following file:
  • AmiModulePkg/OemActivation/OA2/OA2.h


OemActivation: Data Structure Index

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • Data Structures
  • Data Structure Index
Data Structure Index
E | O | W | _
E
EFI_ACPI_SLP
O
OEM_PUBLIC_KEY_STRUCTURE
W
WINDOWS_MARKER_STRUCTURE
_
_BIOS_OEM_DATA
_EFI_ACPI_MSDM_TABLE
_EFI_OA3_MSDM_STRUCTURE
_OA1_STRUC
E | O | W | _


OemActivation: File List

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
File List
Here is a list of all documented files with brief descriptions:
[detail level 1234]
\ - AmiModulePkg
  \ - OemActivation
    o - OA1
    | o * OA1.c
    | \ * OA1.h
    o - OA2
    | o * OA2.c
    | \ * OA2.h
    \ - OA3
      o * OA3.c
      o * OA3.h
      o * OA3_SmiFlashHook.c
      \ * OA3_SMM.c
Generated on Thu Dec 10 2020 11:18:42 for OemActivation by doxygen 1.8.6


OemActivation: AmiModulePkg Directory Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • AmiModulePkg
AmiModulePkg Directory Reference

Directories

directory OemActivation


OemActivation: AmiModulePkg/OemActivation Directory Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • AmiModulePkg
  • OemActivation
OemActivation Directory Reference

Directories

directory | OA1
directory | OA2
directory | OA3

Files

file doxygen_objdb_11536.tmp


OemActivation: AmiModulePkg/OemActivation/OA1 Directory Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • AmiModulePkg
  • OemActivation
  • OA1
OA1 Directory Reference

Files

file | OA1.c
file | OA1.h
file | OA1.inf
file | OA1.sdl
file | OemTable.cbin
file | OemTable.inf


OemActivation: AmiModulePkg/OemActivation/OA1/OA1.c File Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • AmiModulePkg
  • OemActivation
  • OA1
Functions
OA1.c File Reference

Functions

EFI_STATUS EFIAPI OA1_EntryPoint (IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)

Detailed Description

Microsoft OEM Activation 1.0

Function Documentation

EFI_STATUS EFIAPI OA1_EntryPoint | ( | IN EFI_HANDLE | ImageHandle,
 |  | IN EFI_SYSTEM_TABLE * | SystemTable
 | ) |  |

This function is the entry point of the OA1 eModule.

Parameters
ImageHandle - Image handle for this driver image. SystemTable - Pointer to the EFI system table.
Return values
EFI_STATUS
Generated on Thu Dec 10 2020 11:18:42 for OemActivation by doxygen 1.8.6


OemActivation: AmiModulePkg/OemActivation/OA1/OA1.h File Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • AmiModulePkg
  • OemActivation
  • OA1
Data Structures | Typedefs
OA1.h File Reference

Data Structures

struct | _BIOS_OEM_DATA
struct | _OA1_STRUC

Typedefs

typedef struct _BIOS_OEM_DATA | BIOS_OEM_DATA
typedef struct _OA1_STRUC | OA1_STRUC

Detailed Description

Header file for OA1 module.

Typedef Documentation

typedef struct _BIOS_OEM_DATA BIOS_OEM_DATA

This structure comes out of the AMI Utility Specification.

Fields:

Name Type Description

Guid EFI_GUID Firmware Section GUID Identifier CHAR8 Identifier String "$ODB$" Flag UINT16 Data Flag Size UINT16 Data Size Data UINT8 Data Buffer (OEM OA 1.0 String)


OemActivation: AmiModulePkg/OemActivation/OA2 Directory Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • AmiModulePkg
  • OemActivation
  • OA2
OA2 Directory Reference

Files

file | Marker.bin
file | Marker.inf
file | OA2.c
file | OA2.h
file | OA2.inf
file | OA2.sdl
file | PubKey.bin
file | PubKey.inf


OemActivation: AmiModulePkg/OemActivation/OA2/OA2.c File Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • AmiModulePkg
  • OemActivation
  • OA2
Functions
OA2.c File Reference

Functions

EFI_STATUS | LocateAndLoadRawData (IN EFI_GUID *FfsGuid, IN VOID *Address, IN UINTN Size)
EFI_STATUS | PreserveSlicBinaries (VOID)
EFI_STATUS | PublishSlicTable (VOID)
EFI_STATUS EFIAPI | OA2_EntryPoint (IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)

Detailed Description

Updated the XSDT with the SLIC OEM Activation ACPI Table.

Function Documentation

EFI_STATUS LocateAndLoadRawData | ( | IN EFI_GUID * | FfsGuid,
 |  | IN VOID * | Address,
 |  | IN UINTN | Size
 | ) |  |

This fills the PubKey and Marker structures of SLIC table.

Parameters
FfsGuid - Pointer to GUID of the FFS file to read Address - Address of the buffer to read data into Size - Size of the buffer
Return values
EFI_SUCCESS | Successful
EFI_NOT_FOUND | Couldn't find the binaries
EFI_STATUS EFIAPI OA2_EntryPoint | ( | IN EFI_HANDLE | ImageHandle,
 |  | IN EFI_SYSTEM_TABLE * | SystemTable
 | ) |  |

This function is the entry point of the eModule.

Parameters
ImageHandle - Image handle SystemTable - Pointer to the system table
Return values
EFI_SUCCESS | - Slic Table was published (and preserved if we are in recovery mode)
EFI_ERROR | - Slic table was not published for some reasons.
EFI_STATUS PreserveSlicBinaries ( VOID )

This function preserves the Marker and PubKey binaries.

Parameters
VOID
Return values
EFI_STATUS based on result
EFI_STATUS PublishSlicTable ( VOID )

This function publish SLIC table in the ACPI.

Parameters
VOID
Return values
EFI_SUCCESS | - SLIC table has been published
EFI_NOT_FOUND | - SLP Public Key Binaries or Marker or AcpiTableProtocol was Not Found
other | EFI_ERROR - Unable to publish Acpi Table


OemActivation: AmiModulePkg/OemActivation/OA2/OA2.h File Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • AmiModulePkg
  • OemActivation
  • OA2
Data Structures
OA2.h File Reference

Data Structures

struct | OEM_PUBLIC_KEY_STRUCTURE
struct | WINDOWS_MARKER_STRUCTURE
struct | EFI_ACPI_SLP

Detailed Description

OA2 Header file.


OemActivation: AmiModulePkg/OemActivation/OA3 Directory Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • AmiModulePkg
  • OemActivation
  • OA3
OA3 Directory Reference

Files

file | OA3.c
file | OA3.h
file | OA3.inf
file | OA3.mak
file | OA3.sdl
file | OA3_SmiFlashHook.c
file | OA3_SmiFlashHook.inf
file | OA3_SmiFlashHook.sdl
file | OA3_SMM.c
file | OA3_SMM.inf
file | OA3_SMM.sdl


OemActivation: AmiModulePkg/OemActivation/OA3/OA3.c File Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • AmiModulePkg
  • OemActivation
  • OA3
Typedefs | Functions | Variables
OA3.c File Reference

Typedefs

typedef VOID( OA3_TABLE_ADDRESS_FUNC )(OUT EFI_PHYSICAL_ADDRESS *OA3TableAddress)

Functions

EFI_STATUS | LocateSectionResource (IN EFI_GUID *pResourceGuid, IN EFI_GUID *pResourceSectionGuid, OUT UINT8 **Address)
EFI_STATUS | GetProductKey (IN EFI_PHYSICAL_ADDRESS StartAddr, IN EFI_PHYSICAL_ADDRESS EndAddr, OUT UINT8 **Address)
EFI_STATUS | PreserveProductKey (VOID)
EFI_STATUS EFIAPI | OA3_EntryPoint (IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)

Variables

OA3_TABLE_ADDRESS_FUNC
OA3_TABLE_ADDRESS_ELINK 		EndOfList
OA3_TABLE_ADDRESS_FUNC * OA3TableAddressElink []

Detailed Description

Microsoft OEM Activation 3.0

Function Documentation

EFI_STATUS GetProductKey | ( | IN EFI_PHYSICAL_ADDRESS | StartAddr,
 |  | IN EFI_PHYSICAL_ADDRESS | EndAddr,
 |  | OUT UINT8 ** | Address
 | ) |  |

This function locates the Product Key.

Parameters
Address - pointer to returning address of the Product Key structure.
Return values
EFI_STATUS
EFI_STATUS LocateSectionResource | ( | IN EFI_GUID * | pResourceGuid,
 |  | IN EFI_GUID * | pResourceSectionGuid,
 |  | OUT UINT8 ** | Address
 | ) |  |

This function locate resource binary by GUID.

Parameters
pResourceGuid - pointer to recourse GUID pResourceSectionGuid - pointer to recourse section GUID Address - pointer to returning address of the resource
Return values
EFI_STATUS
EFI_STATUS EFIAPI OA3_EntryPoint | ( | IN EFI_HANDLE | ImageHandle,
 |  | IN EFI_SYSTEM_TABLE * | SystemTable
 | ) |  |

This function is the entry point of the eModule.

Parameters
ImageHandle - Image handle SystemTable - Pointer to the system table
Return values
EFI_STATUS
EFI_STATUS PreserveProductKey ( VOID )

This function preserves the Product Key.

Parameters
VOID
Return values
EFI_STATUS

Variable Documentation

OA3_TABLE_ADDRESS_FUNC* OA3TableAddressElink[]
Initial value:
= \
{OA3_TABLE_ADDRESS_ELINK NULL}


OemActivation: AmiModulePkg/OemActivation/OA3/OA3.h File Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • AmiModulePkg
  • OemActivation
  • OA3
Data Structures | Typedefs
OA3.h File Reference

Data Structures

struct | _EFI_ACPI_MSDM_TABLE
struct | _EFI_OA3_MSDM_STRUCTURE

Typedefs

typedef struct _EFI_ACPI_MSDM_TABLE EFI_ACPI_MSDM_TABLE
typedef struct
_EFI_OA3_MSDM_STRUCTURE 		EFI_OA3_MSDM_STRUCTURE

Detailed Description

Header file for OA3 module.

Typedef Documentation

typedef struct _EFI_ACPI_MSDM_TABLE EFI_ACPI_MSDM_TABLE

This structure comes out of the document "M$ Digital Marker Pilot"

Fields:

Name Length Description

Header - Standard ACPI header Version 4 0x1 Reserved 4 0x0 DataType 4 0x1 DataReserved 4 0x0 DataLength 4 0x1D Data 29 5x5 Product Key, including "-" (BH3RN-B7FDM-C7WGT-4CR4X-6CKHM)


OemActivation: AmiModulePkg/OemActivation/OA3/OA3_SmiFlashHook.c File Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • AmiModulePkg
  • OemActivation
  • OA3
Functions
OA3_SmiFlashHook.c File Reference

Functions

VOID OemActivationUpdateBlockTypeId (IN UINT8 SwSmiNum, IN UINT64 Buffer)

Function Documentation

VOID OemActivationUpdateBlockTypeId | ( | IN UINT8 | SwSmiNum,
 |  | IN UINT64 | Buffer
 | ) |  |

This function is SW SMI hook that sets Flash Block Description type for AMI AFU utility.

Parameters
SwSmiNum - SW SMI value number Buffer - Flash descriptor address
Return values
VOID
Generated on Thu Dec 10 2020 11:18:42 for OemActivation by doxygen 1.8.6


OemActivation: AmiModulePkg/OemActivation/OA3/OA3_SMM.c File Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • AmiModulePkg
  • OemActivation
  • OA3
Typedefs | Functions | Variables
OA3_SMM.c File Reference

Typedefs

typedef VOID( OA3_SMM_TABLE_ADDRESS_FUNC )(OUT EFI_PHYSICAL_ADDRESS *OA3TableAddress)

Functions

UINT8 | ChsumTbl (IN UINT8 *TblStart, IN UINT32 BytesCount)
EFI_STATUS | Oa3UpdateAcpiTable (IN UINT8 *ProductKey)
EFI_STATUS EFIAPI | SwSmiOa3Function (IN EFI_HANDLE DispatchHandle, IN CONST VOID *Context OPTIONAL, IN OUT VOID *CommBuffer OPTIONAL, IN OUT UINTN *CommBufferSize OPTIONAL)
EFI_STATUS EFIAPI | OA3_SMM_EntryPoint (IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)

Variables

OA3_SMM_TABLE_ADDRESS_FUNC
OA3_SMM_TABLE_ADDRESS_ELINK 		EndOfList
OA3_SMM_TABLE_ADDRESS_FUNC * OA3SmmTableAddressElink []

Detailed Description

This part of code allows to update ACPI in the OS Runtime through the SW SMI for OEM Activation without rebooting the system.

Function Documentation

UINT8 ChsumTbl | ( | IN UINT8 * | TblStart,
 |  | IN UINT32 | BytesCount
 | ) |  |

This function calculates a checksum of table starting at TblStart of length BytesCount and returns the checksum value.

Parameters
TblStart - Starting address of the memory area to checksum. BytesCount - Length in bytes of the memory area to checksum.
Return values
Checksum value starting from TblStart and ending at TblStart + BytesCount.
EFI_STATUS EFIAPI OA3_SMM_EntryPoint | ( | IN EFI_HANDLE | ImageHandle,
 |  | IN EFI_SYSTEM_TABLE * | SystemTable
 | ) |  |

The module Entry Point of the OA3 SMM driver.

Parameters
ImageHandle | The firmware allocated handle for the EFI image.
SystemTable | A pointer to the EFI System Table.
Return values
EFI_SUCCESS | The entry point is executed successfully.
Other | Some error occurs when executing this entry point.
EFI_STATUS Oa3UpdateAcpiTable ( IN UINT8 * ProductKey )

This function will update ACPI table for OA3.

Parameters
ProductKey - pointer to the Product Key
Return values
EFI_STATUS
EFI_STATUS EFIAPI SwSmiOa3Function | ( | IN EFI_HANDLE | DispatchHandle,
 |  | IN CONST VOID *Context | OPTIONAL,
 |  | IN OUT VOID *CommBuffer | OPTIONAL,
 |  | IN OUT UINTN *CommBufferSize | OPTIONAL
 | ) |  |

Calling the SMI Interface The caller will write AL (the value 0xee) to the SMI Command Port as defined in the ACPI FADT. The SMI handler will update the callers' buffer(s) and return.

Parameters
DispatchHandle DispatchContext
Return values
VOID
Note
The function will clear the carry bit if it is successful (CF = 0). If the function is unsuccessful, it will set the carry bit and set the error code in the AH register as indicated by the error table below. The function returns the following data in the provided parameter block.

Variable Documentation

OA3_SMM_TABLE_ADDRESS_FUNC* OA3SmmTableAddressElink[]
Initial value:
= \
{OA3_SMM_TABLE_ADDRESS_ELINK NULL}


OemActivation: Globals

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • All
  • Functions
  • Typedefs
Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:
  • BIOS_OEM_DATA : OA1.h
  • ChsumTbl() : OA3_SMM.c
  • EFI_ACPI_MSDM_TABLE : OA3.h
  • GetProductKey() : OA3.c
  • LocateAndLoadRawData() : OA2.c
  • LocateSectionResource() : OA3.c
  • OA1_EntryPoint() : OA1.c
  • OA2_EntryPoint() : OA2.c
  • OA3_EntryPoint() : OA3.c
  • OA3_SMM_EntryPoint() : OA3_SMM.c
  • Oa3UpdateAcpiTable() : OA3_SMM.c
  • OemActivationUpdateBlockTypeId() : OA3_SmiFlashHook.c
  • PreserveProductKey() : OA3.c
  • PreserveSlicBinaries() : OA2.c
  • PublishSlicTable() : OA2.c
  • SwSmiOa3Function() : OA3_SMM.c


OemActivation: Globals

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • All
  • Functions
  • Typedefs
  • ChsumTbl() : OA3_SMM.c
  • GetProductKey() : OA3.c
  • LocateAndLoadRawData() : OA2.c
  • LocateSectionResource() : OA3.c
  • OA1_EntryPoint() : OA1.c
  • OA2_EntryPoint() : OA2.c
  • OA3_EntryPoint() : OA3.c
  • OA3_SMM_EntryPoint() : OA3_SMM.c
  • Oa3UpdateAcpiTable() : OA3_SMM.c
  • OemActivationUpdateBlockTypeId() : OA3_SmiFlashHook.c
  • PreserveProductKey() : OA3.c
  • PreserveSlicBinaries() : OA2.c
  • PublishSlicTable() : OA2.c
  • SwSmiOa3Function() : OA3_SMM.c


OemActivation: Globals

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • File List
  • Globals
  • All
  • Functions
  • Typedefs
  • BIOS_OEM_DATA : OA1.h
  • EFI_ACPI_MSDM_TABLE : OA3.h


Copyright

American Megatrends, Inc.
5555 Oakbrook Parkway
Suite 200
Norcross, GA 30093 (USA)

Copyright (c) 1999-2020 American Megatrends, Inc. All Rights Reserved.

This publication contains proprietary information, which is protected by copyright. No part of this publication may be reproduced, transcribed, stored in a retrieval system, translated into any language or computer language, or transmitted in any form whatsoever without the prior written consent of the publisher, American Megatrends, Inc.

American Megatrends, Inc. retains the right to update, change, modify this publication at any time, without notice.

For Additional Information

Call American Megatrends BIOS Sales Department at 1-800-828-9264 for additional information.

Limitations of Liability

In no event shall American Megatrends be held liable for any loss, expenses, or damages of any kind whatsoever, whether direct, indirect, incidental, or consequential, arising from the design or use of this product or the support materials provided with the product.

Limited Warranty

No warranties are made, either expressed or implied, with regard to the contents of this work, its merchantability, or fitness for a particular use. American Megatrends assumes no responsibility for errors and omissions or for the uses made of the material contained herein or reader decisions based on such use.

Trademark and Copyright Acknowledgments

All product names used in this publication are for identification purposes only and are trademarks of their respective Companies.


OemActivation: D:/tools Directory Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • D:
  • tools
tools Directory Reference

Directories

directory CHM


OemActivation: D: Directory Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • D:
D: Directory Reference

Directories

directory tools


OemActivation: D:/tools/CHM/OemActivationCHM Directory Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • D:
  • tools
  • CHM
  • OemActivationCHM
OemActivationCHM Directory Reference

Files

file | Copyright.htm
file | Release Notes.htm
file | ReleaseNotes00.htm
file | ReleaseNotes01.htm
file | ReleaseNotes02.htm
file | ReleaseNotes03.htm
file | ReleaseNotes04.htm
file | ReleaseNotes05.htm
file | ReleaseNotes06.htm
file | ReleaseNotes07.htm
file | ReleaseNotes08.htm
file | ReleaseNotes09.htm
file | ReleaseNotes10.htm
file | ReleaseNotes11.htm
file | ReleaseNotes12.htm
file | ReleaseNotes13.htm
file | ReleaseNotes14.htm
file | ReleaseNotes15.htm
file | ReleaseNotes16.htm
file | style.css
file | Test_Procedure_OA1.htm
file | Test_Procedure_OA2.htm
file | Test_Procedure_OA3.htm


OemActivation: D:/tools/CHM Directory Reference

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
  • D:
  • tools
  • CHM
CHM Directory Reference

Directories

directory OemActivationCHM


OemActivation: Main Page

OemActivation OemActivation_17
  • Main Page
  • Data Structures
  • Files
OemActivation Documentation

Release Notes Copyright

Copyright

American Megatrends, Inc.
5555 Oakbrook Parkway
Suite 200
Norcross, GA 30093 (USA)

Copyright (c) 1999-2020 American Megatrends, Inc. All Rights Reserved.

This publication contains proprietary information, which is protected by copyright. No part of this publication may be reproduced, transcribed, stored in a retrieval system, translated into any language or computer language, or transmitted in any form whatsoever without the prior written consent of the publisher, American Megatrends, Inc.

American Megatrends, Inc. retains the right to update, change, modify this publication at any time, without notice.

For Additional Information

Call American Megatrends BIOS Sales Department at 1-800-828-9264 for additional information.

Limitations of Liability

In no event shall American Megatrends be held liable for any loss, expenses, or damages of any kind whatsoever, whether direct, indirect, incidental, or consequential, arising from the design or use of this product or the support materials provided with the product.

Limited Warranty

No warranties are made, either expressed or implied, with regard to the contents of this work, its merchantability, or fitness for a particular use. American Megatrends assumes no responsibility for errors and omissions or for the uses made of the material contained herein or reader decisions based on such use.

Trademark and Copyright Acknowledgments

All product names used in this publication are for identification purposes only and are trademarks of their respective Companies.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2020-12-18
Source Control Label: OemActivation_17
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: ACPI_17
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_58
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink and OA3SmmTableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
NONE.
General Bug Fixes and EIP Addressed in this Label:
EIP NONE
1. Fix GCC build warning
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA1.h
OA2.h
OA3.h
OA3.c
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
EIP #583505
Release History:
OemActivation_16
OemActivation_15
OemActivation_14
OemActivation_13
OemActivation_12
OemActivation_11
OemActivation_10
OemActivation_09
OemActivation_08
OemActivation_07
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2012-10-29
Source Control Label: 5.004_OemActivation_00
Source Control Location: SS: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: SS: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: SS: $/AptioV/Source/Modules/ACPI;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
AMI Build Tools:
Visual eBIOS RSS: 7.15.0124, Dated: 2012-10-19
Build Tools: 5.004_BuildTools_08, Dated: 2012-10-02
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
New features added in this label:
NONE
General Bug Fixes and EIP Addressed in this Label:
NONE
Files Changed for General Bug Fixes and EIP Addressed in this Label:
NONE
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Use validation tool and testing procedure for OEM Activation 2.0/2.1, which are provided by Microsoft to test OA2 module.
Test Procedure OEM Activation 3.0
Validation Testing:
NONE
Release History:

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2013-03-08
Source Control Label: 5.004_OemActivation_01
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
AMI Build Tools:
Visual eBIOS RSS: 7.15.0124, Dated: 2012-10-19
Build Tools: 5.004_BuildTools_08, Dated: 2012-10-02
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE
General Bug Fixes and EIP Addressed in this Label:
NONE
Files Changed for General Bug Fixes and EIP Addressed in this Label:
NONE
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.0
Test Procedure OEM Activation 3.0
Validation Testing:
Available upon request
Release History:
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2013-11-26
Source Control Label: 5.004_OemActivation_02
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
AMI Build Tools:
Visual eBios: RSS.7.15.0223, Dated: 2013-07-01
Build Tools: 5.004_BuildTools_20, Dated: 2013-04-17
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
EIP 125798. Added security check for Runtime injection of Product Key through SMI
EIP addressed in this label:
EIP 140254. T_ACPI_OEM_ID and T_ACPI_OEM_TBL_ID in OA module updated to make them be able to have multiple spaces.
General Bug Fixes and EIP Addressed in this Label:
EIP 134853. Pubkey.bin size was changed from 157bytes, which was against the spec, to 156bytes.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OemActivation.chm: EIP 144815
OA3_SMM.c: EIP 125798
OA3_SMM.sdl: EIP 125798
Pubkey.bin: EIP 134853
OA3.c: EIP 140254
OA3_SmiFlashHook.sdl: EIP 140254
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Available upon request
Release History:
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2014-03-17
Source Control Label: OemActivation_03
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
AMI Build Tools:
Visual eBios: RSS.7.15.0248, Dated: 2013-11-13
Build Tools: 5.004_BuildTools_21, Dated: 2013-09-15
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
None.
EIP addressed in this label:
EIP 152770. A3_SMM_SUPPORT default value changed to 1, which allows to update MSDM in runtime..
General Bug Fixes and EIP Addressed in this Label:
EIP 158027. Installation of handler dependency on presence of NVRAM Variable "MsdmVariable" removed.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OemActivation.chm: EIP 158953
OA3_SMM.c: EIP 158027
OA3_SMM.sdl: EIP 152770
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Available upon request
Release History:
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2015-03-06
Source Control Label: OemActivation_04
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
AMI Build Tools:
Visual eBios: RSS.7.17.0303, Dated: 2015-01-30
Build Tools: BuildTools_25.6, Dated: 2015-02-11
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
EIP 188806. Added capability to dynamically choose location of binaries in OA2
EIP addressed in this label:
EIP 208003. File headers updated to Doxygen style.
General Bug Fixes and EIP Addressed in this Label:
NONE.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OemActivation.chm: EIP 208008
All *.c and *.h files: EIP 208003
OA2.cif, OA2.sdl, Marker.inf and PubKey.inf: EIP 188806
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Available upon request
Release History:
5.004_OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2015-24-12
Source Control Label: OemActivation_05
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_25
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
AMI Build Tools:
Visual eBios: RSS.7.17.0303, Dated: 2015-01-30
Build Tools: BuildTools_25.6, Dated: 2015-02-11
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
EIP 219701. OA2 driver speed on system recovery improved.
EIP addressed in this label:
EIP 239752. Usage of AmiCpuInfoHob is replaced with AmiValidateMemoryBuffer function from AmiBufferValidationLib, which was introduced in AmiModulePkg_25.
EIP 210398. MODULE_TYPE in OA3_SmiFlashHook.inf should be changed from USER_DEFINED DXE_SMM_DRIVER.
General Bug Fixes and EIP Addressed in this Label:
NONE.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OemActivation.chm: EIP 248604
OA2.sdl and OA2.c: EIP 219701
OA3_SMM.inf and OA3_SMM.c: EIP 239752
OA3_SmiFlashHook.inf: EIP 210398
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/17/2015.
Release History:
5.004_OemActivation_04
5.004_OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2016-15-12
Source Control Label: OemActivation_06
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_25
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
AMI Build Tools:
Visual eBios: RSS.7.19.0448, Dated: 2016-06-29
Build Tools: (INT)BuildTools_30.4, Dated: 2016-11-04
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 264028. OemActivation module changed to build under GCC.
EIP 210398. Delay at OA2 and OA3 entry point during system recovery reduced.
General Bug Fixes and EIP Addressed in this Label:
NONE.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA1.h, OA2.sdl, OA2.c, OA2.h, OA3.c, OA3.h: EIP 264028
OA2.sdl, OA2.c, OA3.c: EIP 294050
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2017-06-21
Source Control Label: OemActivation_07
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_25
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 330074. OemActivation chm file update
EIP 338760. Use elink to get memory address of OA 3.0 key when token OEM_ACTIVATION_TABLE_LOCATION is two
General Bug Fixes and EIP Addressed in this Label:
NONE.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
NONE
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2017-08-29
Source Control Label: OemActivation_08
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_25
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink and OA3SmmTableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 353392. Use elink to get memory address of OA 3.0 key in SMM when token OEM_ACTIVATION_TABLE_LOCATION is two
General Bug Fixes and EIP Addressed in this Label:
NONE.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA3.mak, OA3_SMM.c, OA3_SMM.sdl: EIP 353392
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_07
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2017-10-06
Source Control Label: OemActivation_09
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_25
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink and OA3SmmTableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 363988. [OemActivation]Memory validation fail while Adding MSDM table for OA3
General Bug Fixes and EIP Addressed in this Label:
NONE.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA3_SMM.c: EIP 363988
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_08
OemActivation_07
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2018-09-10
Source Control Label: OemActivation_10
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_25
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink and OA3SmmTableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 418418. Reduce TRACE_ALWAYS using in Module
General Bug Fixes and EIP Addressed in this Label:
NONE.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA1.c, OA1.h, OA1.inf, OemTable.cbin, OemTable.inf, OA2.c, OA2.h, OA2.inf, OA3.c, OA3.h, OA3.inf, OA3_SmiFlashHook.c,inf, OA3_SMM.c, OA3_SMM.inf: EIP 418418
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_09
OemActivation_08
OemActivation_07
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2018-11-15
Source Control Label: OemActivation_11
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: 5.004_ACPI_00
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_25
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink and OA3SmmTableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 433087.
EIP 439763.
General Bug Fixes and EIP Addressed in this Label:
EIP 433087
1.Fix pointer error.
2.Fix build fail when OEM_ACTIVATION_TABLE_LOCATION change to 0.
3.Fix when boot mode is BOOT_ON_FLASH_UPDATE, OA3 or OA2 table will not be preserved.
EIP 439763
1.Fix when recovery image is not loaded, OA3 or OA2 still preserve product key.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA3.c
OA2.c
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_10
OemActivation_09
OemActivation_08
OemActivation_07
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2019-08-07
Source Control Label: OemActivation_12
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: ACPI_17
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_25
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink and OA3SmmTableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 476495.
EIP 462802.
EIP 456173.
General Bug Fixes and EIP Addressed in this Label:
EIP None
1.To improve performance, remove some detail debug message.
EIP 476495
1.Add gEfiVariableArchProtocolGuid and gEfiVariableWriteArchProtocolGuid as the dependency to make sure Get/Set variable is ready in runtime service table.
EIP 462802
1. Verify the MSDM table address with MSDM table size before using it. And verify XSDT table address with standard ACPI description header size.
2. Correct the verify size of the input buffer to MSDM table size minus ACPI description header.
3. Verify XSDT table with XSDT table length before access the MSDM table in XSDT.
4. Dependent on ACPI_17.
EIP 456173
1.Clear up CLANG compiler warning in OA module.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA3_SmiFlashHook.c
OA3.inf
OA3_SMM.c
OA3.c
OA2.c
OA1.c
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_11
OemActivation_10
OemActivation_09
OemActivation_08
OemActivation_07
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2019-12-18
Source Control Label: OemActivation_13
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: ACPI_17
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_25
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink and OA3SmmTableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 484897.
General Bug Fixes and EIP Addressed in this Label:
EIP 484897
1. Update token flag to not output to Tokens.equ
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA3_SmiFlashHook.sdl
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_12
OemActivation_11
OemActivation_10
OemActivation_09
OemActivation_08
OemActivation_07
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2020-03-10
Source Control Label: OemActivation_14
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: ACPI_17
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_38
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink and OA3SmmTableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 522249.
EIP 522261.
EIP 526034.
General Bug Fixes and EIP Addressed in this Label:
EIP 522249
1. Some drivers don't need to include IntelFrameworkPkg/IntelFrameworkPkg. Remove it in inf.
EIP 522261
1. OA3 doesn't need FlashLib, remove it in OA3.inf.
2. Change to use define in AmiSmiFlash.h instead of SmiFlash.h
EIP 526034
1. Fix compiler warnings.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA3.inf
OA2.inf
OA3_SmiFlashHook.inf
OA3_SmiFlashHook.c
OemTable.inf
OA3_SMM.c
OA3.c
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_13
OemActivation_12
OemActivation_11
OemActivation_10
OemActivation_09
OemActivation_08
OemActivation_07
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2020-08-12
Source Control Label: OemActivation_15
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: ACPI_17
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_58
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink and OA3SmmTableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 553095.
EIP 556888.
General Bug Fixes and EIP Addressed in this Label:
EIP 553095
1. Me capsule update fail when image is larger than FLASH_SIZE. Because the image is modified by preserved OA key.
Check if the image is ME FV, then don't need to preserved OA key.
EIP 556888
1. Since ReadSaveState() will be prohibited in some platforms, OA3 needs to change use AmiSmmCommnicateProtocol to get registers if AmiPcdSmmCommInterfaceProperties bit 0 is set.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA3_SMM.inf
OA3_SMM.c
OA3.c
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_14
OemActivation_13
OemActivation_12
OemActivation_11
OemActivation_10
OemActivation_09
OemActivation_08
OemActivation_07
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Release Notes - NDA Required

Component Information:
Component Title: OemActivation
Component Reference Name: OemActivation
Component Type: eModule
Release Date: 2020-09-14
Source Control Label: OemActivation_16
Source Control Location: $/AptioV/Source/Modules/OemActivation
Dependencies
ONE
Dependent Component Title: SMIFlash
Dependent Component Reference Name: SMIFlash
Dependent Source Control Label: 5.001_SmiFlash_03
Dependent Source Control Location: $/AptioV/Source/Modules/SmiFlash;
TWO
Dependent Component Title: ACPI
Dependent Component Reference Name: ACPI
Dependent Source Control Label: ACPI_17
Dependent Source Control Location: $/AptioV/Source/Modules/ACPI;
THREE
Dependent Component Title: Ami Module Package
Dependent Component Reference Name: AmiModulePkg
Dependent Source Control Label: AmiModulePkg_58
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiModulePkg;
FOUR
Dependent Component Title: Ami Compatibility Package
Dependent Component Reference Name: AmiCompatibilityPkg
Dependent Source Control Label: 5.004_AmiCompatibilityPkg_13
Dependent Source Control Location: $/AptioV/Source/Interfaces/AmiCompatibilityPkg;
Protocol GUID's dependency:
EFI_ACPI_TABLE_PROTOCOL_GUID
EFI_SMM_BASE2_PROTOCOL_GUID
EFI_SMM_SW_DISPATCH2_PROTOCOL_GUID
EFI_LEGACY_BIOS_EXT_PROTOCOL_GUID
EFI_FIRMWARE_VOLUME2_PROTOCOL_GUID
Component Description:
OEM Activation aka System-Locked Pre-installation (SLP) is the mechanism used by big royalty OEM computer manufacturers to factory activate pre-installed Windows operating system on branded desktop PC, laptop, notebook, netbook and nettop computer so that activation process of Windows is done transparently and automatically once end-user first starts the computer. The offline OEM-style pre-activation that bypass Windows Product Activatin (WPA) is implemented to reduce the chance of annoying mass PC buyers from having to deal with activation after buying the computer.
There are now four different version of OEM Activations:
  1. OEM Activation 1.0 (aka SLP 1.0) for Windows XP and Windows Server 2008;
  2. OEM Activation 2.0 (aka SLP 2.0) for Windows Vista and Windows Server 2008;
  3. OEM Activation 2.1, which supports Windows 7, Windows Server 2008 R2, and has backward-compatibility support for Windows Vista and Windows Server 2008;
  4. OEM Activation 3.0, which supports Windows 8.
OEM Activation 2.0 (SLP 2.0) for Windows Vista and Windows Server 2008 is software protection technology for Windows Vista and Windows Server 2008 operating systems that improves upon OEM Activation 1.0, which is available for Microsoft Windows XP and Windows Server 2003 (including R2) operating systems. OEM Activation 2.1 (OA 2.1) is the same technology as OA 2.0 but with additional minor changes for Windows 7 and Windows Server 2008 R2. OA 2.1 still fully supports Windows Vista and Windows Server 2008 as well. OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. OEM Activation 2.1 helps to prevent the copy of legitimately licensed Windows software onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer.
OEM Activation 2.1 is an alternative to Windows Product Activation (WPA) that is available to qualifying OEMs that fulfill the implementation requirements detailed in this document. Instead of phone, Internet or key server activation, OEM Activation 2.1 prevents legitimately licensed Windows software from being installed onto non-licensed computers by associating the Windows operating system to the firmware of the physical computer. OEM Activation 2.1 is available only with OEM products, that is, OEM Activation 2.1 is not available with retail products. There is no difference in the OA 2.1 process for CPU architecture (IA-64, x64, or x86) or firmware architecture (BIOS, EFI, or UEFI). If an OEM does not implement OEM Activation 2.1, Windows defaults to WPA, which does not require additional tasks.
OEM Activation 3.0 is the Microsoft Digital Marker (MSDM) enables an injection of a unique, SKU-specific, 5x5 product key in the to be created "new" ACPI table within the PC's BIOS/Firmware. This feature will ultimately allow for electronic OS licensing and product activation.
Token OEM_ACTIVATION_TABLE_LOCATION for OA3 table location
  1. 0 - FID Table, OA3 table is in FV, no porting required.
  2. 1 - NCB, OA3 table is in Non-Critical Block. Romlayout porting for additional NCB and adjust token OEM_ACTIVATION_TABLE_ADDRESS are required.
  3. 2 - OA3 table is in memory. OEM should provide memory address in Elink OA3TableAddressElink and OA3SmmTableAddressElink.
File list of OEM Activation
Filename | Description
OemActivation.chm | Help file
OemActivation.cif | eModule CIF file
ModulePart Name: OA1
ModulePart Description: OEM Activation 1.0
File list of OA1 module part
OA1.c | C file
OA1.h | Header file
OemTable.cbin | OA 1.0 structure file
OA1.cif | CIF file
OA1.sdl | SDL file
OA1.inf | INF file
OemTable.inf | INF file
ModulePart Name: OA2
ModulePart Description: OEM Activation 2.0
File list of OA2 module part
OA2.c | C file
OA2.h | Header file
OA2.cif | CIF file
OA2.sdl | SDL file
Marker.inf | INF file
OA2.inf | INF file
PubKey.inf | INF file
Marker.bin | Marker binary file
PubKey.bin | Public Key binary file
ModulePart Name: OA3
ModulePart Description: OEM Activation 3.0
File list of OA3 module part
OA3.c | C file
OA3_SmiFlashHook.c | C file
OA3_SMM.c | C file
OA3.h | Header file
OA3.cif | CIF file
OA3_SmiFlashHook.cif | CIF file
OA3_SMM.cif | CIF file
OA3.sdl | SDL file
OA3_SmiFlashHook.sdl | SDL file
OA3_SMM.sdl | SDL file
OA3.inf | INF file
OA3_SmiFlashHook.inf | INF file
OA3_SMM.inf | INF file
OA3.mak | MAK file
AMI Build Tools:
Tools Label: BuildTools_30, Dated: 2016-12-31
Visual eBios: RSS.7.19.0476, Dated: 2016-12-29
Compiler Tool(s): Microsoft Windows Driver Kit (WDK) Ver. 7600.16385.1
Utility(s):AMISLP 2.01, AFU 3.04
New features added in this label:
NONE.
EIP addressed in this label:
EIP 559807.
General Bug Fixes and EIP Addressed in this Label:
EIP 559807
1. Don't return error status in the SMI handler.
Files Changed for General Bug Fixes and EIP Addressed in this Label:
OA3_SMM.c
Remaining Issues:
NONE
Unit Testing:
Test Procedure OEM Activation 1.0
Test Procedure OEM Activation 2.x
Test Procedure OEM Activation 3.0
Validation Testing:
Test submission to BQA passed on 12/13/2016.
Release History:
OemActivation_15
OemActivation_14
OemActivation_13
OemActivation_12
OemActivation_11
OemActivation_10
OemActivation_09
OemActivation_08
OemActivation_07
OemActivation_06
OemActivation_05
OemActivation_04
OemActivation_03
5.004_OemActivation_02
5.004_OemActivation_01
5.004_OemActivation_00

© American Megatrends Inc.


Test Procedure

OEM Activation 1.0 (SLP 1.0) test procedure

Category: OEM Activation 1.0 for Microsoft Windows XP
Sub Category:
Product: Generic Aptio Test

Test Objective: The purpose of this test is to validate OemActivation eModule.

Test Requirements:

  1. SUT with EFI Shell.

Test Procedures:

  1. Boot to EFI Shell
  2. Enter 'dmem fe840 3e'
  3. EFI Shell suppose to display:
  4. Memory Address 00000000000FE840 3E Bytes
    000FE840: 43 6F 70 79 72 69 67 68-74 20 41 6D 65 72 69 63  *Copyright Americ*
000FE850: 61 6E 20 4D 65 67 61 74-72 65 6E 64 73 20 49 6E  *an Megatrends In*
000FE860: 63 2E 20 31 39 38 35 2D-32 30 30 39 00 00 00 00  *c. 1985-2013....*
000FE870: 00 00 00 00 00 00 00 00-00 00 00 00 00 00        *..............*

Expected Results: All scenarios should work without error
Run time (hh:mm):

© American Megatrends Inc.


Test Procedure

Test Requirements: 1. A copy of the BIOS ROM file that can be tested. Note: The BIOS will be modified so a writable copy is required. 2. A copy of BQALAB's "SLP20Marker.bin" (writable copy). 3. A copy of BQALAB's "SLP20PubKey.bin" (writable copy). 4. A copy of AMISLP.EXE. NOTE: This test does not have to be run on the SUT. Test Requirements: 1. Copy AMISLP.EXE, BIOS, SLP20Marker.bin, and SLP20PubKey.bin files to a temporary directory. 2. Execute "AMISLP /D ROMFilename>OEMID.TXT" The output should be similar to: OEM ID = ALASKA OEM TABLE ID = A M I If the OEM Ids are not displayed, attach the output file and FAIL the test. 3. Execute "AMISLP /I ROMFilename SLP20PubKey.bin SLP20Marker.bin>INSERT.TXT" The output should be a) "Updating ROM image...Success!" or b) "Public Key File already exists in the Firmware Image" or c) similar to: OEM ID from firmware image = AMIINC OEM ID from Marker File = ALASKA OEM Table ID from firmware image = A.M.I. OEM Table ID from Marker File = A M I Files not inserted into firmware image because of mismatch OEM IDs. If so, attach the two output files and PASS the test. If the output reports the SLP driver is not available in the firmware image, attach the two output files and FAIL the test. Expected Results: AMISLP.EXE should be able to detect the driver in the BIOS and if not already in the BIOS and IDs match to insert it. Run time (hh:mm):


Test Procedure

OEM Activation 3.0 test procedure

Category: OEM Activation 3.0 for Microsoft Windows 8
Sub Category:
Product: Generic Aptio Test

Test Objective: The purpose of this test is to validate OemActivation eModule.

Test Requirements:

  1. SUT with Microsoft Windows 8 installed.
  2. AFU utility version 2.39 or greater (afuwin64.exe and amifldrv64.sys).
    $/Alaska/ROMUtils/AFU/afuwin/64/afuwin64.zip
  3. The testing dm.bin file that contain these 49 bytes:
    01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00
1D 00 00 00 33 59 56 34 5A 2D 35 55 4B 36 50 2D
36 53 48 35 50 2D 32 44 49 34 42 2D 32 45 4A 36
42
  4. The Microsoft MSDM tool OEMCheckMSDM.exe
  5. USB thumb drive with recovery image.

Test Procedures:

Unit test for the Product Key injection:
  1. Start SUT with BIOS on the system that has just been built (i.e. the key in the $FID table is not set).
  2. Boot to Windows 8.
  3. Run as administrator cmd.exe
  4. Run AfuWin64.exe with the dm.bin file:
    AfuWin64 /Adm.bin
  5. Reboot the system.
  6. Use the OEMCheckMSDM.exe utility to check MSDM ACPI table.
Unit testing for the Product Key preservation in the Recovery Mode:
  1. Start SUT in the Recovery Mode. SUT should load the recovery image from the USB thumb drive and pass through this mode normally.
  2. Restart SUT in the normal mode.
  3. Boot to Windows 8.
  4. Run as administrator cmd.exe
  5. Use the OEMCheckMSDM.exe utility to check MSDM ACPI table.
Unit test for the Product Key injection without reboot (OA3_SMM_SUPPORT=1):
  1. Start SUT with BIOS on the system that has just been built (i.e. the key in the $FID table is not set).
  2. Boot to Windows 8.
  3. Run as administrator cmd.exe
  4. Run AfuWin64.exe with the dm.bin file:
    AfuWin64 /Adm.bin
  5. Run OEMCheckMSDM.exe utility to check MSDM ACPI table.
Expected Result:
Microsoft Windows [Version 6.2.9200]
(c) 2012 Microsoft Corporation. All rights reserved.

C:\Users\slava\Desktop\AfuWin64>afuwinx64.exe /adm.bin
+---------------------------------------------------------------------------+
|                 AMI Firmware Update Utility  v3.04.03                     |
|      Copyright (C)2012 American Megatrends Inc. All Rights Reserved.      |
+---------------------------------------------------------------------------+
 Reading flash ............... done
 Erasing OA Block ............ done
 Updating OA Block ........... done
 Verifying OA Block .......... done

C:\Users\slava\Desktop\AfuWin64>OEMCheckMSDM.exe

=======================================================
Checking MSDM table
Found MSDM table, print in hex format

4d 53 44 4d 55 00 00 00 03 f5
41 4c 41 53 4b 41 41 20 4d 20
49 20 00 00 09 20 07 01 41 4d
49 20 13 00 00 01 01 00 00 00
00 00 00 00 01 00 00 00 00 00
00 00 1d 00 00 00 33 59 56 34
5a 2d 35 55 4b 36 50 2d 36 53
48 35 50 2d 32 44 49 34 42 2d
32 45 4a 36 42

Parse MSDM table now ...

SIGNATURE:        MSDM
Length:           85(0x55)
Revision:         3
CheckSum:         0xf5
OEMID:            ALASKA
OEMTableID:       A M I
OEMRevision:      1072009
CreatorID:       AMI
CreatorRev:       16777235

Printing MSDM payload in Hex format
01 00 00 00 00 00 00 00 01 00
00 00 00 00 00 00 1d 00 00 00
33 59 56 34 5a 2d 35 55 4b 36
50 2d 36 53 48 35 50 2d 32 44
49 34 42 2d 32 45 4a 36 42

MSDM table payload:
Version:           1
Reserved:          0
Type:              1
Reserved:          0
DataLength:        29
Product key:       3YV4Z-5UK6P-6SH5P-2DI4B-2EJ6B

Expected Results: All scenarios should work without error
Run time (hh:mm):

© American Megatrends Inc.