Files
system76-edk2/SignedCapsulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadPei.inf
Jiewen Yao e470ee6de9 SignedCapsulePkg/RecoveryModuleLoadPei: Add RecoveryModuleLoadPei.
RecoveryModuleLoadPei supports recovery system firmware via FMP capsule.

RecoveryModuleLoadPei produces EFI_PEI_RECOVERY_MODULE_PPI. It is invoked
by DxeIpl in recovery boot mode.

LoadRecoveryCapsule() will scan all possible
gEfiPeiDeviceRecoveryModulePpiGuid and get EDKII system FMP capsule there.

LoadRecoveryCapsule() will perform the FMP authentication and version
check. If and only if the FMP authentication passes, and EDKII system FMP
capsule version is equal to the current system firmware Version, the
recovery will be performed. Or this capsule image is discard.

Cc: Feng Tian <feng.tian@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Chao Zhang <chao.b.zhang@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Tested-by: Michael Kinney <michael.d.kinney@intel.com>
2016-11-08 22:41:03 +08:00

72 lines
2.0 KiB
INI

## @file
# Recovery module.
#
# Load Recovery capsule and install FV.
#
# Copyright (c) 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.
#
#
##
[Defines]
INF_VERSION = 0x00010005
BASE_NAME = RecoveryModuleLoadPei
MODULE_UNI_FILE = RecoveryModuleLoadPei.uni
FILE_GUID = 4278A574-4769-4D60-B090-DD4916691590
MODULE_TYPE = PEIM
VERSION_STRING = 1.0
ENTRY_POINT = InitializeRecoveryModule
#
# The following information is for reference only and not required by the build tools.
#
# VALID_ARCHITECTURES = IA32 X64 IPF EBC
#
[Sources]
RecoveryModuleLoadPei.c
ParseConfigProfile.c
[Packages]
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
SignedCapsulePkg/SignedCapsulePkg.dec
[LibraryClasses]
PeimEntryPoint
DebugLib
HobLib
BaseMemoryLib
MemoryAllocationLib
EdkiiSystemCapsuleLib
IniParsingLib
PrintLib
[Ppis]
gEfiPeiRecoveryModulePpiGuid ## PRODUCES
gEfiPeiDeviceRecoveryModulePpiGuid ## CONSUMES
[Guids]
gEfiFmpCapsuleGuid ## SOMETIMES_CONSUMES ## GUID
[Pcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdSystemFmpCapsuleImageTypeIdGuid ## CONSUMES
gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareFileGuid ## CONSUMES
[FeaturePcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport ## CONSUMES
[depex]
gEfiPeiBootInRecoveryModePpiGuid
[UserExtensions.TianoCore."ExtraFiles"]
RecoveryModuleLoadPeiExtra.uni