audk/MdeModulePkg/Library
Dandan Bi 466ebdd2e0 MdeModulePkg/FPDT: Lock boot performance table address variable at EndOfDxe
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2957

1. Allocate performance data table at EndOfDxe and then lock the varible
   which store the table address at EndOfDxe.

2. Enlarge PCD gEfiMdeModulePkgTokenSpaceGuid.PcdExtFpdtBootRecordPadSize
   from 0x20000 to 0x30000 in order to hold the Delta performance data
   between EndOfDxe and ReadyToBoot.

3. SMM performance data is collected by DXE modules through SMM communication
   at ReadyToBoot before.
   Now to do SMM communication twice, one for allocating the performance
   size at EndOfDxe, another is at ReadyToBoot to get SMM performance data.

4. Make SmmCorePerformanceLib rather than FirmwarePerformanceSmm to communicate
   with DxeCorePerformanceLib for SMM performance data and size.

Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Hao A Wu <hao.a.wu@intel.com>
Cc: Jian J Wang <jian.j.wang@intel.com>
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
2021-11-12 07:36:23 +00:00
..
AuthVariableLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
BaseBmpSupportLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
BaseHobLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
BaseIpmiLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
BaseMemoryAllocationLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
BasePlatformHookLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
BaseResetSystemLibNull MdeModulePkg: remove EnterS3WithImmediateWake () from ResetSystemLib 2020-01-10 07:00:51 +00:00
BaseSerialPortLib16550 MdeModulePkg: Fix constructor invocation ordering 2020-10-16 17:21:04 +00:00
BaseSortLib MdeModulePkg/SortLib: Add QuickSort function on BaseLib 2021-10-21 03:23:04 +00:00
BootDiscoveryPolicyUiLib MdeModulePkg: Add BootDiscoveryPolicyUiLib. 2021-08-03 04:59:12 +00:00
BootLogoLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
BootMaintenanceManagerUiLib MdeModulePkg/BM_UI: Add the new terminal types to related menu 2019-09-24 21:56:46 +08:00
BootManagerUiLib MdeModulePkg/BootManagerUiLib: show inactive boot options 2020-06-06 07:49:42 +00:00
BrotliCustomDecompressLib MdeModulePkg BrotliCustomDecompressLib: Remove the duplicated functions 2021-01-06 07:15:09 +00:00
CpuExceptionHandlerLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
CustomizedDisplayLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DebugAgentLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DeviceManagerUiLib MdeModulePkg/DeviceManagerUiLib: connect all before creating menu page 2020-04-30 07:51:10 +00:00
DisplayUpdateProgressLibGraphics MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DisplayUpdateProgressLibText MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DxeCapsuleLibFmp MdeModulePkg/DxeCapsuleLibFmp: Use new Variable Lock interface 2021-11-10 09:27:33 +00:00
DxeCapsuleLibNull MdeModulePkg: Add Capsule On Disk APIs into CapsuleLib. 2019-06-26 15:10:42 +08:00
DxeCoreMemoryAllocationLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DxeCorePerformanceLib MdeModulePkg/FPDT: Lock boot performance table address variable at EndOfDxe 2021-11-12 07:36:23 +00:00
DxeCrc32GuidedSectionExtractLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DxeDebugPrintErrorLevelLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DxeFileExplorerProtocol MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DxeIpmiLibIpmiProtocol MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DxePerformanceLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DxePrintLibPrint2Protocol MdeModulePkg: Remove code wrapped by DISABLE_NEW_DEPRECATED_INTERFACES 2020-10-13 01:35:03 +00:00
DxeReportStatusCodeLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
DxeResetSystemLib MdeModulePkg: Add DxeResetSystemLib unit test 2020-02-07 19:18:53 +00:00
DxeSecurityManagementLib MdeModulePkg/SecurityManagementLib: Mark the File parameter as OPTIONAL 2020-04-22 01:55:34 +00:00
FileExplorerLib MdeModulePkg: Fix various typos 2021-05-17 02:10:31 +00:00
FmpAuthenticationLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
FrameBufferBltLib MdeModulePkg: Add missing sourceX for Blt 2019-09-25 11:54:53 +08:00
LockBoxNullLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
LzmaCustomDecompressLib MdeModulePkg Lzma: Update LZMA SDK version to 19.00 2021-01-08 10:03:53 +00:00
NonDiscoverableDeviceRegistrationLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
OemHookStatusCodeLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PciHostBridgeLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PeiCrc32GuidedSectionExtractLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PeiDebugLibDebugPpi MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PeiDebugPrintHobLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PeiDxeDebugLibReportStatusCode MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PeiIpmiLibIpmiPpi MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PeiPerformanceLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PeiReportStatusCodeLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PeiResetSystemLib MdeModulePkg: remove EnterS3WithImmediateWake () from ResetSystemLib 2020-01-10 07:00:51 +00:00
PiDxeS3BootScriptLib MdeModulePkg: Fix various typos 2021-05-17 02:10:31 +00:00
PiSmmCoreMemoryAllocationLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PiSmmCoreSmmServicesTableLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PlatformBootManagerLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PlatformHookLibSerialPortPpi MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
PlatformVarCleanupLib MdeModulePkg/PlatformVarCleanupLib: fix HiiConstructConfigHdr() call 2019-10-09 09:40:09 +02:00
ResetUtilityLib MdeModulePkg/ResetUtilityLib: Use STATIC_ASSERT macro 2019-09-17 09:38:59 +08:00
RuntimeDxeReportStatusCodeLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
RuntimeResetSystemLib MdeModulePkg: remove EnterS3WithImmediateWake () from ResetSystemLib 2020-01-10 07:00:51 +00:00
SmmCorePerformanceLib MdeModulePkg/FPDT: Lock boot performance table address variable at EndOfDxe 2021-11-12 07:36:23 +00:00
SmmCorePlatformHookLibNull MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
SmmIpmiLibSmmIpmiProtocol MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
SmmLockBoxLib MdeModulePkg: SmmLockBoxSmmLib: Support StandaloneMm for SmmLockBoxLib 2021-02-01 10:01:03 -08:00
SmmMemoryAllocationProfileLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
SmmPerformanceLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
SmmReportStatusCodeLib MdeModulePkg: SmmReportStatusCodeLib: ReportStatusCodeLib in StandaloneMm 2021-02-01 10:01:03 -08:00
SmmSmiHandlerProfileLib MdeModulePkg: SmmSmiHandlerProfileLib: Support StandaloneMm Instance 2021-02-01 10:03:14 -08:00
TpmMeasurementLibNull MdeModulePkg/Library: add PEIM and SEC module type to TpmMeasurementLibNull 2020-09-02 12:27:38 +00:00
UefiBootManagerLib MdeModulePkg: Reproduce builds across source format changes 2021-11-08 18:01:35 +00:00
UefiHiiLib MdeModulePkg/Library: Add HiiGetStringEx to UefiHiiLib for EDK2 Redfish 2021-02-05 05:10:44 +00:00
UefiHiiServicesLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
UefiMemoryAllocationProfileLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
UefiSortLib MdeModulePkg/SortLib: Add QuickSort function on BaseLib 2021-10-21 03:23:04 +00:00
VarCheckHiiLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
VarCheckLib MdeModulePkg/Library/VarCheckLib: Allow SetVariable from SMM 2021-01-07 03:48:10 +00:00
VarCheckPcdLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
VarCheckPolicyLib MdeModulePkg: Initialize temp variable in VarCheckPolicyLib 2021-04-13 01:24:13 +00:00
VarCheckUefiLib MdeModulePkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:08 -07:00
VariablePolicyHelperLib MdeModulePkg: Initialize local variable value before they are used 2021-03-25 01:54:46 +00:00
VariablePolicyLib MdeModulePkg/VariablePolicyLib: Fix runtime panic in ValidateSetVariable() 2020-11-27 01:19:34 +00:00