]> git.proxmox.com Git - mirror_edk2.git/blame - IntelFsp2Pkg/Include/Library/FspSecPlatformLib.h
Revert "FmpDevicePkg: Fix various typos"
[mirror_edk2.git] / IntelFsp2Pkg / Include / Library / FspSecPlatformLib.h
CommitLineData
cf1d4549
JY
1/** @file\r
2\r
efa12a3f 3 Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>\r
9672cd30 4 SPDX-License-Identifier: BSD-2-Clause-Patent\r
cf1d4549
JY
5\r
6**/\r
7\r
8#ifndef _FSP_SEC_PLATFORM_LIB_H_\r
9#define _FSP_SEC_PLATFORM_LIB_H_\r
10\r
11/**\r
12 This function performs platform level initialization.\r
13\r
14 This function must be in ASM file, because stack is not established yet.\r
15 This function is optional. If a library instance does not provide this function, the default empty one will be used.\r
16\r
17 The callee should not use XMM6/XMM7.\r
18 The return address is saved in MM7.\r
19\r
20 @retval in saved in EAX - 0 means platform initialization success.\r
21 other means platform initialization fail.\r
22**/\r
23UINT32\r
24EFIAPI\r
25SecPlatformInit (\r
26 VOID\r
27 );\r
28\r
29/**\r
30 This function loads Microcode.\r
31\r
32 This function must be in ASM file, because stack is not established yet.\r
33 This function is optional. If a library instance does not provide this function, the default one will be used.\r
34\r
35 The callee should not use XMM6/XMM7.\r
36 The return address is saved in MM7.\r
37\r
38 @param[in] FsptUpdDataPtr Address pointer to the FSPT_UPD data structure. It is saved in ESP.\r
39\r
40 @retval in saved in EAX - 0 means Microcode is loaded successfully.\r
41 other means Microcode is not loaded successfully.\r
42**/\r
43UINT32\r
44EFIAPI\r
45LoadMicrocode (\r
46 IN VOID *FsptUpdDataPtr\r
47 );\r
48\r
49/**\r
50 This function initializes the CAR.\r
51\r
52 This function must be in ASM file, because stack is not established yet.\r
53\r
54 The callee should not use XMM6/XMM7.\r
55 The return address is saved in MM7.\r
56\r
57 @param[in] FsptUpdDataPtr Address pointer to the FSPT_UPD data structure. It is saved in ESP.\r
58\r
59 @retval in saved in EAX - 0 means CAR initialization success.\r
60 other means CAR initialization fail.\r
61**/\r
62UINT32\r
63EFIAPI\r
64SecCarInit (\r
65 IN VOID *FsptUpdDataPtr\r
66 );\r
67\r
68/**\r
efa12a3f 69 This function check the signture of UPD.\r
cf1d4549
JY
70\r
71 @param[in] ApiIdx Internal index of the FSP API.\r
72 @param[in] ApiParam Parameter of the FSP API.\r
73\r
74**/\r
75EFI_STATUS\r
76EFIAPI\r
77FspUpdSignatureCheck (\r
78 IN UINT32 ApiIdx,\r
79 IN VOID *ApiParam\r
80 );\r
81\r
82#endif\r