/** @file | |
This library class defines interface for platform to perform platform | |
specific initialization in SEC phase. | |
Copyright (c) 2013 - 2015, Intel Corporation. All rights reserved.<BR> | |
SPDX-License-Identifier: BSD-2-Clause-Patent | |
**/ | |
#ifndef __PLATFORM_SEC_LIB_H__ | |
#define __PLATFORM_SEC_LIB_H__ | |
/** | |
A developer supplied function to perform platform specific operations. | |
It's a developer supplied function to perform any operations appropriate to a | |
given platform. It's invoked just before passing control to PEI core by SEC | |
core. Platform developer may modify the SecCoreData passed to PEI Core. | |
It returns a platform specific PPI list that platform wishes to pass to PEI core. | |
The Generic SEC core module will merge this list to join the final list passed to | |
PEI core. | |
@param SecCoreData The same parameter as passing to PEI core. It | |
could be overridden by this function. | |
@return The platform specific PPI list to be passed to PEI core or | |
NULL if there is no need of such platform specific PPI list. | |
**/ | |
EFI_PEI_PPI_DESCRIPTOR * | |
EFIAPI | |
SecPlatformMain ( | |
IN OUT EFI_SEC_PEI_HAND_OFF *SecCoreData | |
); | |
/** | |
This interface conveys state information out of the Security (SEC) phase into PEI. | |
@param PeiServices Pointer to the PEI Services Table. | |
@param StructureSize Pointer to the variable describing size of the input buffer. | |
@param PlatformInformationRecord Pointer to the EFI_SEC_PLATFORM_INFORMATION_RECORD. | |
@retval EFI_SUCCESS The data was successfully returned. | |
@retval EFI_BUFFER_TOO_SMALL The buffer was too small. | |
**/ | |
EFI_STATUS | |
EFIAPI | |
SecPlatformInformation ( | |
IN CONST EFI_PEI_SERVICES **PeiServices, | |
IN OUT UINT64 *StructureSize, | |
OUT EFI_SEC_PLATFORM_INFORMATION_RECORD *PlatformInformationRecord | |
); | |
/** | |
This interface disables temporary memory in SEC Phase. | |
**/ | |
VOID | |
EFIAPI | |
SecPlatformDisableTemporaryMemory ( | |
VOID | |
); | |
#endif |