]> git.proxmox.com Git - mirror_edk2.git/blob - QuarkPlatformPkg/Platform/Pei/PlatformInit/PeiFvSecurity.h
QuarkPlatformPkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / QuarkPlatformPkg / Platform / Pei / PlatformInit / PeiFvSecurity.h
1 /** @file
2 Definition of Pei Core Structures and Services
3
4 Copyright (c) 2013 Intel Corporation.
5
6 SPDX-License-Identifier: BSD-2-Clause-Patent
7
8 **/
9
10 #ifndef _PEI_FV_SECURITY_H_
11 #define _PEI_FV_SECURITY_H_
12
13 #include <Ppi/FirmwareVolume.h>
14 #include <Ppi/FirmwareVolumeInfo.h>
15 #include <Library/DebugLib.h>
16 #include <Library/PeiServicesLib.h>
17 #include <Library/MemoryAllocationLib.h>
18
19 /**
20 Callback function to perform FV security checking on a FV Info PPI.
21
22 @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation
23 @param NotifyDescriptor Address of the notification descriptor data structure.
24 @param Ppi Address of the PPI that was installed.
25
26 @retval EFI_SUCCESS
27
28 **/
29 EFI_STATUS
30 EFIAPI
31 FirmwareVolmeInfoPpiNotifySecurityCallback (
32 IN EFI_PEI_SERVICES **PeiServices,
33 IN EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor,
34 IN VOID *Ppi
35 );
36
37 /**
38 Authenticates the Firmware Volume
39
40 @param CurrentFvAddress Pointer to the current Firmware Volume under consideration
41
42 @retval EFI_SUCCESS Firmware Volume is legal
43
44 **/
45 EFI_STATUS
46 PeiSecurityVerifyFv (
47 IN EFI_FIRMWARE_VOLUME_HEADER *CurrentFvAddress
48 );
49
50 /**
51
52 Entry point for the PEI Security PEIM
53 Sets up a notification to perform PEI security checking
54
55 @param FfsHeader Not used.
56 @param PeiServices General purpose services available to every PEIM.
57
58 @return EFI_SUCCESS PEI Security notification installed successfully.
59 All others: PEI Security notification failed to install.
60
61 **/
62 EFI_STATUS
63 PeiInitializeFvSecurity (
64 VOID
65 );
66
67 #endif