]> git.proxmox.com Git - mirror_edk2.git/blame - IntelFsp2Pkg/Include/Ppi/TempRamExitPpi.h
IntelFsp2Pkg: add TempRamExitPpi.h.
[mirror_edk2.git] / IntelFsp2Pkg / Include / Ppi / TempRamExitPpi.h
CommitLineData
4c12dcac
CC
1/** @file\r
2 This file defines the Silicon Temp Ram Exit PPI which implements the\r
3 required programming steps for disabling temporary memory.\r
4\r
5Copyright (c) 2019, Intel Corporation. All rights reserved.<BR>\r
6SPDX-License-Identifier: BSD-2-Clause-Patent\r
7\r
8**/\r
9\r
10#ifndef _FSP_TEMP_RAM_EXIT_PPI_H_\r
11#define _FSP_TEMP_RAM_EXIT_PPI_H_\r
12\r
13///\r
14/// Global ID for the FSP_TEMP_RAM_EXIT_PPI.\r
15///\r
16#define FSP_TEMP_RAM_EXIT_GUID \\r
17 { \\r
18 0xbc1cfbdb, 0x7e50, 0x42be, { 0xb4, 0x87, 0x22, 0xe0, 0xa9, 0x0c, 0xb0, 0x52 } \\r
19 }\r
20\r
21//\r
22// Forward declaration for the FSP_TEMP_RAM_EXIT_PPI.\r
23//\r
24typedef struct _FSP_TEMP_RAM_EXIT_PPI FSP_TEMP_RAM_EXIT_PPI;\r
25\r
26/**\r
27 Silicon function for disabling temporary memory.\r
28 @param[in] TempRamExitParamPtr - Pointer to the TempRamExit parameters structure.\r
29 This structure is normally defined in the Integration\r
30 Guide. If it is not defined in the Integration Guide,\r
31 pass NULL.\r
32 @retval EFI_SUCCESS - FSP execution environment was initialized successfully.\r
33 @retval EFI_INVALID_PARAMETER - Input parameters are invalid.\r
34 @retval EFI_UNSUPPORTED - The FSP calling conditions were not met.\r
35 @retval EFI_DEVICE_ERROR - Temporary memory exit.\r
36**/\r
37typedef\r
38EFI_STATUS\r
39(EFIAPI *FSP_TEMP_RAM_EXIT) (\r
40 IN VOID *TempRamExitParamPtr\r
41 );\r
42\r
43///\r
44/// This PPI provides function to disable temporary memory.\r
45///\r
46struct _FSP_TEMP_RAM_EXIT_PPI {\r
47 FSP_TEMP_RAM_EXIT TempRamExit;\r
48};\r
49\r
50extern EFI_GUID gFspTempRamExitPpiGuid;\r
51\r
52#endif // _FSP_TEMP_RAM_EXIT_PPI_H_\r