]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFsp2WrapperPkg/Include/Library/FspWrapperMultiPhaseProcessLib.h
IntelFsp2WrapperPkg: Add FSP 2.4 MultiPhase interface.
[mirror_edk2.git] / IntelFsp2WrapperPkg / Include / Library / FspWrapperMultiPhaseProcessLib.h
diff --git a/IntelFsp2WrapperPkg/Include/Library/FspWrapperMultiPhaseProcessLib.h b/IntelFsp2WrapperPkg/Include/Library/FspWrapperMultiPhaseProcessLib.h
new file mode 100644 (file)
index 0000000..65a5db2
--- /dev/null
@@ -0,0 +1,62 @@
+/** @file\r
+  Provide FSP wrapper MultiPhase handling functions.\r
+\r
+  Copyright (c) 2022, Intel Corporation. All rights reserved.<BR>\r
+  SPDX-License-Identifier: BSD-2-Clause-Patent\r
+\r
+**/\r
+\r
+#ifndef __FSP_WRAPPER_MULTI_PHASE_PROCESS_LIB_H__\r
+#define __FSP_WRAPPER_MULTI_PHASE_PROCESS_LIB_H__\r
+\r
+/**\r
+  FSP Wrapper Platform MultiPhase Handler\r
+\r
+  @param[in] FspHobListPtr        - Pointer to FSP HobList (valid after FSP-M completed)\r
+  @param[in] ComponentIndex       - FSP Component which executing MultiPhase initialization.\r
+  @param[in] PhaseIndex           - Indicates current execution phase of FSP MultiPhase initialization.\r
+\r
+  @retval EFI_STATUS        Always return EFI_SUCCESS\r
+\r
+**/\r
+VOID\r
+EFIAPI\r
+FspWrapperPlatformMultiPhaseHandler (\r
+  IN OUT VOID  **FspHobListPtr,\r
+  IN UINT8     ComponentIndex,\r
+  IN UINT32    PhaseIndex\r
+  );\r
+\r
+/**\r
+  FSP Wrapper Variable Request Handler\r
+\r
+  @param[in] FspHobListPtr        - Pointer to FSP HobList (valid after FSP-M completed)\r
+  @param[in] ComponentIndex       - FSP Component which executing MultiPhase initialization.\r
+\r
+  @retval EFI_UNSUPPORTED   FSP Wrapper cannot support the specific variable request\r
+  @retval EFI_STATUS        Return FSP returned status\r
+\r
+**/EFI_STATUS\r
+EFIAPI\r
+FspWrapperVariableRequestHandler (\r
+  IN OUT VOID  **FspHobListPtr,\r
+  IN UINT8     ComponentIndex\r
+  );\r
+\r
+/**\r
+  FSP Wrapper MultiPhase Handler\r
+\r
+  @param[in] FspHobListPtr        - Pointer to FSP HobList (valid after FSP-M completed)\r
+  @param[in] ComponentIndex       - FSP Component which executing MultiPhase initialization.\r
+\r
+  @retval EFI_STATUS        Always return EFI_SUCCESS\r
+\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+FspWrapperMultiPhaseHandler (\r
+  IN OUT VOID  **FspHobListPtr,\r
+  IN UINT8     ComponentIndex\r
+  );\r
+\r
+#endif\r