Merge application PlatOverMngr and library DxePlatDriOverLib into driver PlatDriOverrideDxe.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8169 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -1,9 +1,21 @@
|
||||
#/** @file
|
||||
# This driver produces UEFI PLATFORM_DRIVER_OVERRIDE_PROTOCOL if this protocol doesn't exist.
|
||||
# It doesn't install again if this protocol exists.
|
||||
# It only implements one interface GetDriver of PLATFORM_DRIVER_OVERRIDE_PROTOCOL protocol
|
||||
# and doesn't support other two interfaces GetDriverPath, DriverLoaded.
|
||||
# This driver produces UEFI PLATFORM_DRIVER_OVERRIDE_PROTOCOL if this protocol doesn't exist.
|
||||
# It doesn't install again if this protocol exists.
|
||||
# It only implements one interface GetDriver of PLATFORM_DRIVER_OVERRIDE_PROTOCOL protocol
|
||||
# and doesn't support other two interfaces GetDriverPath, DriverLoaded.
|
||||
#
|
||||
# This driver also offers an UI interface in device manager to let user configure
|
||||
# platform override protocol to override the default algorithm for matching
|
||||
# drivers to controllers.
|
||||
#
|
||||
# The main flow:
|
||||
# 1. It dynamicly locate all controller device path.
|
||||
# 2. It dynamicly locate all drivers which support binding protocol.
|
||||
# 3. It export and dynamicly update two menu to let user select the
|
||||
# mapping between drivers to controllers.
|
||||
# 4. It save all the mapping info in NV variables for the following boot,
|
||||
# which will be consumed by GetDriver API of the produced the platform override protocol.
|
||||
#
|
||||
# Copyright (c) 2007 - 2009, Intel Corporation. All rights reserved.
|
||||
#
|
||||
# All rights reserved. This program and the accompanying materials
|
||||
@@ -18,11 +30,12 @@
|
||||
|
||||
[Defines]
|
||||
INF_VERSION = 0x00010005
|
||||
BASE_NAME = PlatformDriOverrideDxe
|
||||
BASE_NAME = PlatDriOverrideDxe
|
||||
FILE_GUID = 35034CE2-A6E5-4fb4-BABE-A0156E9B2549
|
||||
MODULE_TYPE = UEFI_DRIVER
|
||||
MODULE_TYPE = DXE_DRIVER
|
||||
VERSION_STRING = 1.0
|
||||
ENTRY_POINT = PlatformDriverOverrideEntry
|
||||
ENTRY_POINT = PlatDriOverrideDxeInit
|
||||
UNLOAD_IMAGE = PlatDriOverrideDxeUnload
|
||||
|
||||
#
|
||||
# The following information is for reference only and not required by the build tools.
|
||||
@@ -31,7 +44,12 @@
|
||||
#
|
||||
|
||||
[Sources.common]
|
||||
PlatformDriOverride.c
|
||||
VfrStrings.uni
|
||||
Vfr.vfr
|
||||
PlatDriOverrideDxe.c
|
||||
PlatOverMngr.h
|
||||
PlatDriOverrideLib.c
|
||||
InternalPlatDriOverrideDxe.h
|
||||
|
||||
[Packages]
|
||||
MdePkg/MdePkg.dec
|
||||
@@ -39,11 +57,43 @@
|
||||
|
||||
[LibraryClasses]
|
||||
BaseLib
|
||||
UefiDriverEntryPoint
|
||||
DebugLib
|
||||
PlatformDriverOverrideLib
|
||||
UefiLib
|
||||
UefiDriverEntryPoint
|
||||
UefiBootServicesTableLib
|
||||
HiiLib
|
||||
BaseMemoryLib
|
||||
MemoryAllocationLib
|
||||
DevicePathLib
|
||||
DxeServicesTableLib
|
||||
UefiRuntimeServicesTableLib
|
||||
PrintLib
|
||||
|
||||
[Guids]
|
||||
## This GUID C Name is not required for build since it is from UefiLib and not directly used by this module source.
|
||||
## gEfiGlobalVariableGuid ## SOMETIMES_CONSUMED ## Variable:L"PlatformLang" this variable specifies the platform supported language string (RFC 4646 format)
|
||||
## gEfiGlobalVariableGuid ## SOMETIMES_CONSUMED ## Variable:L"Lang" this variable specifies the platform supported language string (ISO 639-2 format)
|
||||
##
|
||||
# There could be more than one variables, from PlatDriOver, PlatDriOver1, PlatDriOver2,...
|
||||
#
|
||||
# gEfiCallerIdGuid ## Private ## Variable:L"PlatDriOver"
|
||||
gEfiIfrTianoGuid ## CONSUMES ## Guid
|
||||
|
||||
[Protocols]
|
||||
gEfiPlatformDriverOverrideProtocolGuid ## PRODUCED
|
||||
|
||||
gEfiComponentName2ProtocolGuid ## SOMETIMES_CONSUMED (Get Driver Name if ComponentName2Protocol exists)
|
||||
gEfiComponentNameProtocolGuid ## SOMETIMES_CONSUMED (Get Driver Name if ComponentNameProtocol exists and ComponentName2Protocol doesn't exist)
|
||||
gEfiFirmwareVolume2ProtocolGuid ## SOMETIMES_CONSUMED (Get Driver Name from EFI UI section if ComponentName2Protocol and ComponentNameProtocol don't exist)
|
||||
gEfiPciIoProtocolGuid ## SOMETIMES_CONSUMED (Find the PCI device if PciIo protocol is installed)
|
||||
gEfiBusSpecificDriverOverrideProtocolGuid ## SOMETIMES_CONSUMED (Check whether the PCI device contains one or more efi drivers in its option rom by this protocol)
|
||||
|
||||
gEfiDriverBindingProtocolGuid ## SOMETIMES_CONSUMED
|
||||
gEfiLoadedImageProtocolGuid ## SOMETIMES_CONSUMED
|
||||
gEfiLoadedImageDevicePathProtocolGuid ## SOMETIMES_CONSUMED (Show the drivers in the second page that support DriverBindingProtocol, LoadedImageProtocol and LoadedImageDevicePathProtocol)
|
||||
gEfiDevicePathProtocolGuid ## SOMETIMES_CONSUMED (Show the controller device in the first page that support DevicePathProtocol)
|
||||
|
||||
gEfiHiiDatabaseProtocolGuid ## CONSUMED
|
||||
gEfiFormBrowser2ProtocolGuid ## CONSUMED
|
||||
gEfiHiiConfigRoutingProtocolGuid ## CONSUMED
|
||||
gEfiHiiConfigAccessProtocolGuid ## PRODUCED
|
||||
gEfiDevicePathToTextProtocolGuid ## CONSUMED
|
||||
gEfiPlatformDriverOverrideProtocolGuid ## PRODUCED
|
||||
|
Reference in New Issue
Block a user