edk2/MdeModulePkg/Library
Ard Biesheuvel 1652dc2158 MdeModulePkg: introduce helper library to register non-discoverable devices
Non-discoverable devices need to be registered explicitly by the platform.
Introduce a helper library that takes care of this.

This implementation currently only supports registering devices that are
covered by one or more MMIO resources. The underlying protocol allows for
more flexibility than that, but this is currently sufficient for the use
cases that we know about.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
Tested-by: Marcin Wojtas <mw@semihalf.com>
2016-12-07 09:01:27 +00:00
..
AuthVariableLibNull
BaseIpmiLibNull
BasePlatformHookLibNull
BaseResetSystemLibNull MdeModulePkg/BaseResetSystemLibNull: Implement ResetPlatformSpecific 2016-09-02 10:07:14 +08:00
BaseSerialPortLib16550
BaseSortLib
BootLogoLib MdeModulePkg/BootLogoLib: Remove invalid if judgments 2016-11-11 12:55:46 +08:00
BootMaintenanceManagerUiLib MdeModulePkg/BMMUI: add comments for function parameter 2016-11-15 09:36:03 +08:00
BootManagerUiLib MdeModulePkg/BootManagerUiLib: rebase to ARRAY_SIZE() 2016-10-27 11:10:56 +02:00
CpuExceptionHandlerLibNull MdeModulePkg/CpuExceptionHanderLibNull: RegisterCpuInterruptHandler() 2016-11-18 09:43:51 +08:00
CustomizedDisplayLib MdeModulePkg/Library: Fix typos in comments and variables 2016-10-27 09:11:19 +08:00
DebugAgentLibNull MdeModulePkg/Library: Fix typos in comments and variables 2016-10-27 09:11:19 +08:00
DeviceManagerUiLib MdeModulePkg: DeviceManagerUiLib: remove set but unused variables 2016-03-25 10:52:29 +01:00
DxeCapsuleLibFmp MdeModulePkg/DxeCapsuleLibFmp: Use AllocatePool for CapsuleResultVariable 2016-11-23 10:05:47 +08:00
DxeCapsuleLibNull MdeModulePkg/DxeCapsuleLibNull: Add ProcessCapsules() interface. 2016-11-08 22:36:58 +08:00
DxeCoreMemoryAllocationLib MdeModulePkg DxeCoreMemoryAllocationLib: Extend to support MemoryProfileLib 2016-07-01 09:39:58 +08:00
DxeCorePerformanceLib MdeModulePkg: Update PerformanceLib instances not to check Identifier. 2016-04-11 16:20:28 +08:00
DxeCrc32GuidedSectionExtractLib MdeModulePkg/Library: Fix typos in comments and variables 2016-10-27 09:11:19 +08:00
DxeDebugPrintErrorLevelLib MdeModulePkg/Library: Fix typos in comments and variables 2016-10-27 09:11:19 +08:00
DxeDpcLib
DxeFileExplorerProtocol
DxeHttpLib MdeModulePkg/Library: Fix typos in comments and variables 2016-10-27 09:11:19 +08:00
DxeIpIoLib MdeModulePkg: Update IP4 stack drivers for classless address unicast check. 2016-10-28 14:20:10 +08:00
DxeIpmiLibIpmiProtocol
DxeNetLib MdeModulePkg/NetLib: Handle an invalid IPv6 address case 2016-11-28 09:19:40 +08:00
DxePerformanceLib MdeModulePkg: Update PerformanceLib instances not to check Identifier. 2016-04-11 16:20:28 +08:00
DxePrintLibPrint2Protocol
DxeReportStatusCodeLib
DxeSecurityManagementLib
DxeSmmPerformanceLib MdeModulePkg DxeSmmPerformanceLib: Add missing UefiLib in *.inf at de2459d 2016-06-29 12:54:53 +08:00
DxeTcpIoLib
DxeUdpIoLib MdeModulePkg: DxeUdpIoLib: fix non-empty payload path in UDP reception 2016-04-04 13:53:12 +02:00
FileExplorerLib MdeModulePkg FileExplorerLib: Fix potential Integer Overflow. 2016-10-18 10:01:27 +08:00
FmpAuthenticationLibNull MdeModulePkg/FmpAuthenticationLibNull: Add NULL instance FMP. 2016-11-08 22:36:55 +08:00
FrameBufferBltLib MdeModulePkg/FrameBufferBltLib: Change module type to UEFI_DRIVER 2016-11-03 10:28:51 +08:00
LockBoxNullLib
LzmaCustomDecompressLib MdeModulePkg LzmaDecompressLib: Update LZMA to new 16.04 version 2016-11-03 10:21:19 +08:00
NonDiscoverableDeviceRegistrationLib MdeModulePkg: introduce helper library to register non-discoverable devices 2016-12-07 09:01:27 +00:00
OemHookStatusCodeLibNull
PciHostBridgeLibNull MdeModulePkg/PciHostBridgeLib: Correct the function header comments 2016-03-03 18:24:25 +01:00
PeiCrc32GuidedSectionExtractLib MdeModulePkg/Library: Fix typos in comments and variables 2016-10-27 09:11:19 +08:00
PeiDebugPrintHobLib
PeiDxeDebugLibReportStatusCode
PeiIpmiLibIpmiPpi
PeiPerformanceLib MdeModulePkg: Update PerformanceLib instances not to check Identifier. 2016-04-11 16:20:28 +08:00
PeiRecoveryLibNull
PeiReportStatusCodeLib
PeiS3LibNull
PiDxeS3BootScriptLib MdeModulePkg PiDxeS3BootScriptLib: Support multiple PCI segment 2016-09-05 18:15:46 +08:00
PiSmmCoreMemoryAllocationLib MdeModulePkg/Library: Fix typos in comments and variables 2016-10-27 09:11:19 +08:00
PiSmmCoreSmmServicesTableLib
PlatformBootManagerLibNull
PlatformHookLibSerialPortPpi MdeModulePkg: Correct PlatformHookLibSerialPortPpi module type. 2016-04-25 13:17:05 +08:00
PlatformVarCleanupLib MdeModulePkg/Library: Fix typos in comments and variables 2016-10-27 09:11:19 +08:00
RuntimeDxeReportStatusCodeLib
SmmCorePerformanceLib MdeModulePkg: Update PerformanceLib instances not to check Identifier. 2016-04-11 16:20:28 +08:00
SmmCorePlatformHookLibNull
SmmIpmiLibSmmIpmiProtocol
SmmLockBoxLib MdeModulePkg SmmLockBoxSmmLib: Add DESTRUCTOR SmmLockBoxSmmDestructor 2016-06-07 10:01:09 +08:00
SmmMemoryAllocationProfileLib MdeModulePkg/Library: Fix typos in comments and variables 2016-10-27 09:11:19 +08:00
SmmPerformanceLib MdeModulePkg: Update PerformanceLib instances not to check Identifier. 2016-04-11 16:20:28 +08:00
SmmReportStatusCodeLib
TpmMeasurementLibNull
UefiBootManagerLib MdeModulePkg/UefiBootManagerLib: Refine the debug message 2016-11-18 10:42:04 +08:00
UefiHiiLib MdeModulePkg/Library: Fix typos in comments and variables 2016-10-27 09:11:19 +08:00
UefiHiiServicesLib
UefiMemoryAllocationProfileLib MdeModulePkg: Implement new library instance UefiMemoryAllocationProfileLib 2016-07-01 09:39:57 +08:00
UefiSortLib
VarCheckHiiLib MdeModulePkg/VarCheckHiiLib: rebase to ARRAY_SIZE() 2016-10-27 11:10:56 +02:00
VarCheckLib MdeModulePkg VarCheck: #### in L"Boot####" are upper case hex 2016-08-31 15:23:42 +08:00
VarCheckPcdLib
VarCheckUefiLib MdeModulePkg VarCheck: #### in L"Boot####" are upper case hex 2016-08-31 15:23:42 +08:00