mirror of
https://github.com/tianocore/edk2
synced 2026-08-27 00:23:19 -04:00
Currently, there is no mechanism for platforms to enable or disable support for EmbeddedDrivers in capsule updates. This patch introduces a new PCD, PcdEmbeddedDriverSupport, allowing platforms to explicitly control whether capsules containing EmbeddedDrivers are supported. This ensures capsules with embedded drivers are rejected on platforms that do not support them. This is a breaking change.By default, PcdEmbeddedDriverSupport is set to FALSE which disables embedded driver support in capsule updates across all platforms unless explicitly enabled. Platforms must opt-in by setting the PcdEmbeddedDriverSupport to TRUE in order to enable support for capsules containing embedded drivers. Signed-off-by: Pavithra Gurulingappa <gpavithr@qti.qualcomm.com>
78 lines
2.7 KiB
INI
78 lines
2.7 KiB
INI
## @file
|
|
# Capsule library instance for DXE_RUNTIME_DRIVER.
|
|
#
|
|
# Capsule library instance for DXE_RUNTIME_DRIVER module types.
|
|
#
|
|
# Copyright (c) 2016 - 2024, Intel Corporation. All rights reserved.<BR>
|
|
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. All rights reserved.<BR>
|
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
#
|
|
##
|
|
|
|
[Defines]
|
|
INF_VERSION = 0x00010005
|
|
BASE_NAME = DxeRuntimeCapsuleLib
|
|
MODULE_UNI_FILE = DxeRuntimeCapsuleLib.uni
|
|
FILE_GUID = 19BE1E4B-1A9A-44c1-8F12-32DD0470516A
|
|
MODULE_TYPE = DXE_RUNTIME_DRIVER
|
|
VERSION_STRING = 1.0
|
|
LIBRARY_CLASS = CapsuleLib|DXE_RUNTIME_DRIVER
|
|
CONSTRUCTOR = DxeCapsuleLibConstructor
|
|
CONSTRUCTOR = DxeRuntimeCapsuleLibConstructor
|
|
DESTRUCTOR = DxeCapsuleLibDestructor
|
|
DESTRUCTOR = DxeRuntimeCapsuleLibDestructor
|
|
|
|
#
|
|
# The following information is for reference only and not required by the build tools.
|
|
#
|
|
# VALID_ARCHITECTURES = IA32 X64 EBC
|
|
#
|
|
|
|
[Sources]
|
|
DxeCapsuleLib.c
|
|
DxeCapsuleProcessLibNull.c
|
|
DxeCapsuleReportLibNull.c
|
|
DxeCapsuleRuntime.c
|
|
|
|
[Packages]
|
|
MdePkg/MdePkg.dec
|
|
MdeModulePkg/MdeModulePkg.dec
|
|
|
|
[LibraryClasses]
|
|
BaseLib
|
|
BaseMemoryLib
|
|
DebugLib
|
|
MemoryAllocationLib
|
|
DxeServicesTableLib
|
|
UefiBootServicesTableLib
|
|
DevicePathLib
|
|
ReportStatusCodeLib
|
|
PrintLib
|
|
HobLib
|
|
BmpSupportLib
|
|
|
|
|
|
[Protocols]
|
|
gEsrtManagementProtocolGuid ## CONSUMES
|
|
gEfiFirmwareManagementProtocolGuid ## CONSUMES
|
|
gEdkiiVariableLockProtocolGuid ## SOMETIMES_CONSUMES
|
|
gEdkiiFirmwareManagementProgressProtocolGuid ## SOMETIMES_CONSUMES
|
|
|
|
[Guids]
|
|
gEfiFmpCapsuleGuid ## SOMETIMES_CONSUMES ## GUID
|
|
gWindowsUxCapsuleGuid ## SOMETIMES_CONSUMES ## GUID
|
|
gEfiSystemResourceTableGuid ## SOMETIMES_CONSUMES ## GUID
|
|
## SOMETIMES_CONSUMES ## Variable:L"CapsuleMax"
|
|
## SOMETIMES_PRODUCES ## Variable:L"CapsuleMax"
|
|
gEfiCapsuleReportGuid
|
|
gEfiCapsuleVendorGuid ## SOMETIMES_CONSUMES ## Variable:L"CapsuleUpdateData"
|
|
gEfiEndOfDxeEventGroupGuid ## CONSUMES ## Event
|
|
gEfiEventExitBootServicesGuid ## CONSUMES ## Event
|
|
gEfiEventVirtualAddressChangeGuid ## CONSUMES ## Event
|
|
gEdkiiCapsuleOnDiskNameGuid ## SOMETIMES_CONSUMES ## GUID
|
|
|
|
[Pcd]
|
|
gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleEmbeddedDriverSupport ## CONSUMES
|
|
|
|
[Depex]
|
|
gEfiVariableWriteArchProtocolGuid
|