This change added support of StandaloneMm for SmmLockBoxLib. It replaces gSmst with gMmst to support both traditional MM and standalone MM. The contructor and desctructor functions are abstracted to support different function prototype definitions. Cc: Jian J Wang <jian.j.wang@intel.com> Cc: Hao A Wu <hao.a.wu@intel.com> Cc: Eric Dong <eric.dong@intel.com> Signed-off-by: Kun Qin <kun.q@outlook.com> Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
54 lines
1.3 KiB
C
54 lines
1.3 KiB
C
/** @file
|
|
|
|
Copyright (c) 2010 - 2019, Intel Corporation. All rights reserved.<BR>
|
|
Copyright (c) Microsoft Corporation.
|
|
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
|
**/
|
|
|
|
#include <PiMm.h>
|
|
|
|
#include "SmmLockBoxLibPrivate.h"
|
|
|
|
/**
|
|
Constructor for SmmLockBox library.
|
|
This is used to set SmmLockBox context, which will be used in PEI phase in S3 boot path later.
|
|
|
|
@param[in] ImageHandle Image handle of this driver.
|
|
@param[in] SystemTable A Pointer to the EFI System Table.
|
|
|
|
@retval EFI_SUCEESS
|
|
@return Others Some error occurs.
|
|
**/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
SmmLockBoxStandaloneMmConstructor (
|
|
IN EFI_HANDLE ImageHandle,
|
|
IN EFI_MM_SYSTEM_TABLE *SystemTable
|
|
)
|
|
{
|
|
return SmmLockBoxMmConstructor ();
|
|
}
|
|
|
|
/**
|
|
Destructor for SmmLockBox library.
|
|
This is used to uninstall SmmLockBoxCommunication configuration table
|
|
if it has been installed in Constructor.
|
|
|
|
@param[in] ImageHandle Image handle of this driver.
|
|
@param[in] SystemTable A Pointer to the EFI System Table.
|
|
|
|
@retval EFI_SUCEESS The destructor always returns EFI_SUCCESS.
|
|
|
|
**/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
SmmLockBoxStandaloneMmDestructor (
|
|
IN EFI_HANDLE ImageHandle,
|
|
IN EFI_MM_SYSTEM_TABLE *SystemTable
|
|
)
|
|
{
|
|
return SmmLockBoxMmDestructor ();
|
|
}
|