Update IntelFspWrapperPkg according to FSP1.1.
[mirror_edk2.git] / IntelFspWrapperPkg / Include / Library / FspApiLib.h
CommitLineData
a33a2f62
JY
1/** @file\r
2 Provide FSP API related function.\r
3\r
d8043ce9 4 Copyright (c) 2014 - 2015, Intel Corporation. All rights reserved.<BR>\r
a33a2f62
JY
5 This program and the accompanying materials\r
6 are licensed and made available under the terms and conditions of the BSD License\r
7 which accompanies this distribution. The full text of the license may be found at\r
8 http://opensource.org/licenses/bsd-license.php.\r
9\r
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
13**/\r
14\r
15#ifndef __FSP_API_LIB_H__\r
16#define __FSP_API_LIB_H__\r
17\r
18#include <FspApi.h>\r
19#include <FspInfoHeader.h>\r
20\r
21/**\r
22 Find FSP header pointer.\r
23\r
24 @param[in] FlashFvFspBase Flash address of FSP FV.\r
25\r
26 @return FSP header pointer.\r
27**/\r
28FSP_INFO_HEADER *\r
29EFIAPI\r
30FspFindFspHeader (\r
31 IN EFI_PHYSICAL_ADDRESS FlashFvFspBase\r
32 );\r
33\r
34/**\r
35 Call FSP API - FspInit.\r
36\r
37 @param[in] FspHeader FSP header pointer.\r
38 @param[in] FspInitParams Address pointer to the FSP_INIT_PARAMS structure.\r
39\r
d8043ce9 40 @return EFI status returned by FspInit API.\r
a33a2f62 41**/\r
d8043ce9 42EFI_STATUS\r
a33a2f62
JY
43EFIAPI\r
44CallFspInit (\r
45 IN FSP_INFO_HEADER *FspHeader,\r
46 IN FSP_INIT_PARAMS *FspInitParams\r
47 );\r
48\r
49/**\r
50 Call FSP API - FspNotifyPhase.\r
51\r
52 @param[in] FspHeader FSP header pointer.\r
53 @param[in] NotifyPhaseParams Address pointer to the NOTIFY_PHASE_PARAMS structure.\r
54\r
d8043ce9 55 @return EFI status returned by FspNotifyPhase API.\r
a33a2f62 56**/\r
d8043ce9 57EFI_STATUS\r
a33a2f62
JY
58EFIAPI\r
59CallFspNotifyPhase (\r
60 IN FSP_INFO_HEADER *FspHeader,\r
61 IN NOTIFY_PHASE_PARAMS *NotifyPhaseParams\r
62 );\r
63\r
d8043ce9
JY
64/**\r
65 Call FSP API - FspMemoryInit.\r
66\r
67 @param[in] FspHeader FSP header pointer.\r
68 @param[in,out] FspMemoryInitParams Address pointer to the FSP_MEMORY_INIT_PARAMS structure.\r
69\r
70 @return EFI status returned by FspMemoryInit API.\r
71**/\r
72EFI_STATUS\r
73EFIAPI\r
74CallFspMemoryInit (\r
75 IN FSP_INFO_HEADER *FspHeader,\r
76 IN OUT FSP_MEMORY_INIT_PARAMS *FspMemoryInitParams\r
77 );\r
78\r
79/**\r
80 Call FSP API - TempRamExit.\r
81\r
82 @param[in] FspHeader FSP header pointer.\r
83 @param[in,out] TempRamExitParam Address pointer to the TempRamExit parameters structure.\r
84\r
85 @return EFI status returned by TempRamExit API.\r
86**/\r
87EFI_STATUS\r
88EFIAPI\r
89CallTempRamExit (\r
90 IN FSP_INFO_HEADER *FspHeader,\r
91 IN OUT VOID *TempRamExitParam\r
92 );\r
93\r
94/**\r
95 Call FSP API - FspSiliconInit.\r
96\r
97 @param[in] FspHeader FSP header pointer.\r
98 @param[in,out] FspSiliconInitParam Address pointer to the Silicon Init parameters structure.\r
99\r
100 @return EFI status returned by FspSiliconInit API.\r
101**/\r
102EFI_STATUS\r
103EFIAPI\r
104CallFspSiliconInit (\r
105 IN FSP_INFO_HEADER *FspHeader,\r
106 IN OUT VOID *FspSiliconInitParam\r
107 );\r
108\r
a33a2f62 109#endif\r