blob: ca80487640d8cf8062930dbdcf1c11689d89d94c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
/** @file
Initilize Cpu DXE Platform Policy.
Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
#include <Library/BaseLib.h>
#include <Protocol/FirmwareVolume2.h>
#include <Guid/StatusCodeDataTypeId.h>
#include <Library/MemoryAllocationLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/DebugLib.h>
#include <Protocol/SiPolicyProtocol.h>
DXE_SI_POLICY_PROTOCOL mSiPolicyData = { 0 };
/**
Initilize Intel Cpu DXE Platform Policy.
@param[in] ImageHandle Image handle of this driver.
@retval EFI_SUCCESS Initialization complete.
@retval EFI_UNSUPPORTED The chipset is unsupported by this driver.
@retval EFI_OUT_OF_RESOURCES Do not have enough resources to initialize the driver.
@retval EFI_DEVICE_ERROR Device error, driver exits abnormally.
**/
EFI_STATUS
EFIAPI
InitSiPolicy(
)
{
EFI_STATUS Status;
EFI_HANDLE ImageHandle;
ImageHandle = NULL;
mSiPolicyData.Revision = DXE_SI_POLICY_PROTOCOL_REVISION_1;
//
// Install the DXE_SI_POLICY_PROTOCOL interface
//
Status = gBS->InstallMultipleProtocolInterfaces (
&ImageHandle,
&gDxeSiPolicyProtocolGuid,
&mSiPolicyData,
NULL
);
ASSERT_EFI_ERROR (Status);
return Status;
}
|