]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf
MdeModulePkg: Add performance property configuration table
[mirror_edk2.git] / MdeModulePkg / Library / DxeCorePerformanceLib / DxeCorePerformanceLib.inf
index fe224c28dee9154da8e00f3e55181c82f37fdc84..5b89ce278d57614b52c2ecf22a7e1dd375a07149 100644 (file)
@@ -1,33 +1,34 @@
-#/** @file\r
-# Component description file for DxeCore Performance Library\r
-#\r
-# This library provides intrastructure for DxeCore to log performance.\r
-# Copyright (c) 2006, Intel Corporation.\r
-#\r
-#  All rights reserved. This program and the accompanying materials\r
+## @file\r
+#  Performance library instance mainly for DxeCore usage.\r
+#  \r
+#  This library provides the performance measurement interfaces and initializes performance\r
+#  logging for DXE phase. It first initializes its private global data structure for\r
+#  performance logging and saves the performance GUIDed HOB passed from PEI phase. \r
+#  It initializes DXE phase performance logging by publishing the Performance and PerformanceEx Protocol,\r
+#  which is consumed by DxePerformanceLib to logging performance data in DXE phase.\r
+#  This library is mainly used by DxeCore to start performance logging to ensure that\r
+#  Performance and PerformanceEx Protocol are installed at the very beginning of DXE phase.\r
+#  \r
+#  Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>\r
+# (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>\r
+#  This program and the accompanying materials\r
 #  are licensed and made available under the terms and conditions of the BSD License\r
-#  which accompanies this distribution. The full text of the license may be found at\r
+#  which accompanies this distribution.  The full text of the license may be found at\r
 #  http://opensource.org/licenses/bsd-license.php\r
+#  \r
 #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
-#\r
-#\r
-#**/\r
+#  \r
+##\r
 \r
-################################################################################\r
-#\r
-# Defines Section - statements that will be processed to create a Makefile.\r
-#\r
-################################################################################\r
 [Defines]\r
   INF_VERSION                    = 0x00010005\r
   BASE_NAME                      = DxeCorePerformanceLib\r
+  MODULE_UNI_FILE                = DxeCorePerformanceLib.uni\r
   FILE_GUID                      = D0F78BBF-0A30-4c63-8A48-0F618A4AFACD\r
   MODULE_TYPE                    = DXE_CORE\r
   VERSION_STRING                 = 1.0\r
-  LIBRARY_CLASS                  = PerformanceLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SAL_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER\r
-  EDK_RELEASE_VERSION            = 0x00020000\r
-  EFI_SPECIFICATION_VERSION      = 0x00020000\r
+  LIBRARY_CLASS                  = PerformanceLib|DXE_CORE\r
 \r
   CONSTRUCTOR                    = DxeCorePerformanceLibConstructor\r
 \r
 #  VALID_ARCHITECTURES           = IA32 X64 IPF EBC\r
 #\r
 \r
-################################################################################\r
-#\r
-# Sources Section - list of files that are required for the build to succeed.\r
-#\r
-################################################################################\r
-\r
-[Sources.common]\r
+[Sources]\r
   DxeCorePerformanceLib.c\r
-\r
-################################################################################\r
-#\r
-# Package Dependency Section - list of Package files that are required for\r
-#                              this module.\r
-#\r
-################################################################################\r
+  DxeCorePerformanceLibInternal.h\r
 \r
 [Packages]\r
   MdePkg/MdePkg.dec\r
   MdeModulePkg/MdeModulePkg.dec\r
 \r
 \r
-################################################################################\r
-#\r
-# Library Class Section - list of Library Classes that are required for\r
-#                         this module.\r
-#\r
-################################################################################\r
-\r
 [LibraryClasses]\r
   MemoryAllocationLib\r
   UefiBootServicesTableLib\r
   BaseLib\r
   HobLib\r
   DebugLib\r
+  UefiLib\r
 \r
 \r
-################################################################################\r
-#\r
-# Guid C Name Section - list of Guids that this module uses or produces.\r
-#\r
-################################################################################\r
-\r
 [Guids]\r
-  gPeiPerformanceHobGuid                        # ALWAYS_CONSUMED\r
-\r
-\r
-################################################################################\r
-#\r
-# Protocol C Name Section - list of Protocol and Protocol Notify C Names\r
-#                           that this module uses or produces.\r
-#\r
-################################################################################\r
-\r
-[Protocols]\r
-  gPerformanceProtocolGuid                      # PROTOCOL ALWAYS_PRODUCED\r
-\r
-\r
-################################################################################\r
-#\r
-# Pcd FIXED_AT_BUILD - list of PCDs that this module is coded for.\r
-#\r
-################################################################################\r
-\r
-[PcdsFixedAtBuild.common]\r
-  PcdPerformanceLibraryPropertyMask|gEfiMdePkgTokenSpaceGuid\r
-\r
-\r
-################################################################################\r
-#\r
-# Pcd DYNAMIC - list of PCDs that this module is coded for.\r
-#\r
-################################################################################\r
-\r
-[PcdsDynamic.common]\r
-  PcdMaxPeiPerformanceLogEntries|gEfiMdeModulePkgTokenSpaceGuid\r
-\r
+  ## SOMETIMES_CONSUMES   ## HOB\r
+  ## PRODUCES             ## UNDEFINED # Install protocol\r
+  ## PRODUCES             ## SystemTable\r
+  gPerformanceProtocolGuid\r
+  ## SOMETIMES_CONSUMES   ## HOB\r
+  ## PRODUCES             ## UNDEFINED # Install protocol\r
+  gPerformanceExProtocolGuid\r
+\r
+[Pcd]\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPerformanceLogEntries   ## CONSUMES\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPerformanceLogEntries16 ## CONSUMES\r
+  gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask      ## CONSUMES\r