fc0104d28c36819db1e736ac544e89edfd91c743
[mirror_edk2.git] / IntelFspWrapperPkg / Include / Library / FspApiLib.h
1 /** @file
2 Provide FSP API related function.
3
4 Copyright (c) 2014, Intel Corporation. All rights reserved.<BR>
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php.
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef __FSP_API_LIB_H__
16 #define __FSP_API_LIB_H__
17
18 #include <FspApi.h>
19 #include <FspInfoHeader.h>
20
21 /**
22 Find FSP header pointer.
23
24 @param[in] FlashFvFspBase Flash address of FSP FV.
25
26 @return FSP header pointer.
27 **/
28 FSP_INFO_HEADER *
29 EFIAPI
30 FspFindFspHeader (
31 IN EFI_PHYSICAL_ADDRESS FlashFvFspBase
32 );
33
34 /**
35 Call FSP API - FspInit.
36
37 @param[in] FspHeader FSP header pointer.
38 @param[in] FspInitParams Address pointer to the FSP_INIT_PARAMS structure.
39
40 @return FSP status returned by FspInit API.
41 **/
42 FSP_STATUS
43 EFIAPI
44 CallFspInit (
45 IN FSP_INFO_HEADER *FspHeader,
46 IN FSP_INIT_PARAMS *FspInitParams
47 );
48
49 /**
50 Call FSP API - FspNotifyPhase.
51
52 @param[in] FspHeader FSP header pointer.
53 @param[in] NotifyPhaseParams Address pointer to the NOTIFY_PHASE_PARAMS structure.
54
55 @return FSP status returned by FspNotifyPhase API.
56 **/
57 FSP_STATUS
58 EFIAPI
59 CallFspNotifyPhase (
60 IN FSP_INFO_HEADER *FspHeader,
61 IN NOTIFY_PHASE_PARAMS *NotifyPhaseParams
62 );
63
64 #endif