The EfiOpenFileByDevicePath() function centralizes functionality from - MdeModulePkg/Universal/Disk/RamDiskDxe - NetworkPkg/TlsAuthConfigDxe - SecurityPkg/VariableAuthenticated/SecureBootConfigDxe - ShellPkg/Library/UefiShellLib unifying the implementation and fixing various bugs. (Ray suggested that we eliminate the special handling of EFI_FILE_MODE_CREATE in the "OpenMode" input parameter as well. We plan to implement that separately, under <https://bugzilla.tianocore.org/show_bug.cgi?id=1074>.) Cc: Chao Zhang <chao.b.zhang@intel.com> Cc: Eric Dong <eric.dong@intel.com> Cc: Jaben Carsey <jaben.carsey@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Roman Bacik <roman.bacik@broadcom.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Siyuan Fu <siyuan.fu@intel.com> Cc: Star Zeng <star.zeng@intel.com> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1008 Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
91 lines
3.9 KiB
INI
91 lines
3.9 KiB
INI
## @file
|
|
# Instance of UEFI Library.
|
|
#
|
|
# The UEFI Library provides functions and macros that simplify the development of
|
|
# UEFI Drivers and UEFI Applications. These functions and macros help manage EFI
|
|
# events, build simple locks utilizing EFI Task Priority Levels (TPLs), install
|
|
# EFI Driver Model related protocols, manage Unicode string tables for UEFI Drivers,
|
|
# and print messages on the console output and standard error devices.
|
|
#
|
|
# Copyright (c) 2007 - 2018, 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 = UefiLib
|
|
MODULE_UNI_FILE = UefiLib.uni
|
|
FILE_GUID = 3a004ba5-efe0-4a61-9f1a-267a46ae5ba9
|
|
MODULE_TYPE = UEFI_DRIVER
|
|
VERSION_STRING = 1.0
|
|
LIBRARY_CLASS = UefiLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER SMM_CORE
|
|
CONSTRUCTOR = UefiLibConstructor
|
|
|
|
|
|
#
|
|
# VALID_ARCHITECTURES = IA32 X64 IPF EBC
|
|
#
|
|
|
|
[Sources]
|
|
UefiLibPrint.c
|
|
UefiNotTiano.c
|
|
UefiDriverModel.c
|
|
Console.c
|
|
UefiLib.c
|
|
UefiLibInternal.h
|
|
|
|
|
|
[Packages]
|
|
MdePkg/MdePkg.dec
|
|
|
|
|
|
[LibraryClasses]
|
|
PrintLib
|
|
PcdLib
|
|
MemoryAllocationLib
|
|
DebugLib
|
|
BaseMemoryLib
|
|
BaseLib
|
|
UefiBootServicesTableLib
|
|
DevicePathLib
|
|
UefiRuntimeServicesTableLib
|
|
|
|
[Guids]
|
|
gEfiEventReadyToBootGuid ## SOMETIMES_CONSUMES ## Event
|
|
gEfiEventLegacyBootGuid ## SOMETIMES_CONSUMES ## Event
|
|
gEfiGlobalVariableGuid ## SOMETIMES_CONSUMES ## Variable
|
|
|
|
[Protocols]
|
|
gEfiDriverBindingProtocolGuid ## SOMETIMES_PRODUCES
|
|
gEfiSimpleTextOutProtocolGuid ## SOMETIMES_CONSUMES
|
|
gEfiGraphicsOutputProtocolGuid ## SOMETIMES_CONSUMES
|
|
gEfiHiiFontProtocolGuid ## SOMETIMES_CONSUMES
|
|
gEfiSimpleFileSystemProtocolGuid ## SOMETIMES_CONSUMES
|
|
gEfiUgaDrawProtocolGuid | gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
|
|
gEfiComponentNameProtocolGuid | NOT gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable ## SOMETIMES_PRODUCES # User chooses to produce it
|
|
gEfiComponentName2ProtocolGuid | NOT gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable ## SOMETIMES_PRODUCES # User chooses to produce it
|
|
gEfiDriverConfigurationProtocolGuid ## SOMETIMES_PRODUCES # User chooses to produce it
|
|
gEfiDriverConfiguration2ProtocolGuid ## SOMETIMES_PRODUCES # User chooses to produce it
|
|
gEfiDriverDiagnosticsProtocolGuid | NOT gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable ## SOMETIMES_PRODUCES # User chooses to produce it
|
|
gEfiDriverDiagnostics2ProtocolGuid| NOT gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable ## SOMETIMES_PRODUCES # User chooses to produce it
|
|
|
|
|
|
[Pcd]
|
|
gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize ## SOMETIMES_CONSUMES
|
|
|
|
[FeaturePcd]
|
|
gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable ## CONSUMES
|
|
gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable ## CONSUMES
|
|
gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable ## CONSUMES
|
|
gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable ## CONSUMES
|
|
gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport ## CONSUMES
|
|
|