]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFsp2Pkg/Include/Library/FspMultiPhaseLib.h
IntelFsp2Pkg: Add FSP 2.4 MultiPhase interface.
[mirror_edk2.git] / IntelFsp2Pkg / Include / Library / FspMultiPhaseLib.h
diff --git a/IntelFsp2Pkg/Include/Library/FspMultiPhaseLib.h b/IntelFsp2Pkg/Include/Library/FspMultiPhaseLib.h
new file mode 100644 (file)
index 0000000..9c6973c
--- /dev/null
@@ -0,0 +1,55 @@
+/** @file\r
+  FSP MultiPhase Library.\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_MULTIPHASE_LIB_H_\r
+#define _FSP_MULTIPHASE_LIB_H_\r
+\r
+EFI_STATUS\r
+EFIAPI\r
+FspMultiPhaseSwitchStack (\r
+  );\r
+\r
+EFI_STATUS\r
+EFIAPI\r
+FspVariableRequestSwitchStack (\r
+  IN FSP_MULTI_PHASE_VARIABLE_REQUEST_INFO_PARAMS  *FspVariableRequestParams\r
+  );\r
+\r
+/**\r
+  This function handles FspMultiPhaseMemInitApi.\r
+\r
+  @param[in]  ApiIdx           Internal index of the FSP API.\r
+  @param[in]  ApiParam         Parameter of the FSP API.\r
+\r
+  @retval EFI_SUCCESS                 FSP execution was successful.\r
+  @retval EFI_INVALID_PARAMETER       Input parameters are invalid.\r
+  @retval EFI_UNSUPPORTED             The FSP calling conditions were not met.\r
+  @retval EFI_DEVICE_ERROR            FSP initialization failed.\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+FspMultiPhaseMemInitApiHandler (\r
+  IN UINT32  ApiIdx,\r
+  IN VOID    *ApiParam\r
+  );\r
+\r
+/**\r
+  This function handles FspMultiPhaseSiInitApi.\r
+\r
+  @param[in]  ApiIdx           Internal index of the FSP API.\r
+  @param[in]  ApiParam         Parameter of the FSP API.\r
+\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+FspMultiPhaseSiInitApiHandlerV2 (\r
+  IN UINT32  ApiIdx,\r
+  IN VOID    *ApiParam\r
+  );\r
+\r
+#endif\r