Reviewed-by: Liming Gao <liming....@intel.com>

> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of Dandan 
> Bi
> Sent: Thursday, July 19, 2018 2:44 PM
> To: edk2-devel@lists.01.org
> Cc: Zeng, Star <star.z...@intel.com>; Gao, Liming <liming....@intel.com>
> Subject: [edk2] [patch 1/2] MdeModulePkg/DxeLoadFunc: Add use case for new 
> Perf macro
> 
> Add an example case for the usage of
> PERF_EVENT_SIGNAL_BEGIN/PERF_EVENT_SIGNAL_END
> 
> Cc: Liming Gao <liming....@intel.com>
> Cc: Star Zeng <star.z...@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Dandan Bi <dandan...@intel.com>
> ---
>  MdeModulePkg/Core/DxeIplPeim/DxeIpl.h           | 3 ++-
>  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf         | 1 +
>  MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c | 4 ++++
>  3 files changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/MdeModulePkg/Core/DxeIplPeim/DxeIpl.h 
> b/MdeModulePkg/Core/DxeIplPeim/DxeIpl.h
> index 6f8e13d213..9ea88a399b 100644
> --- a/MdeModulePkg/Core/DxeIplPeim/DxeIpl.h
> +++ b/MdeModulePkg/Core/DxeIplPeim/DxeIpl.h
> @@ -1,10 +1,10 @@
>  /** @file
>    Master header file for DxeIpl PEIM. All source files in this module should
>    include this file for common definitions.
> 
> -Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2006 - 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
> 
> @@ -46,10 +46,11 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER 
> EXPRESS OR IMPLIED.
>  #include <Library/PcdLib.h>
>  #include <Library/S3Lib.h>
>  #include <Library/RecoveryLib.h>
>  #include <Library/DebugAgentLib.h>
>  #include <Library/PeiServicesTablePointerLib.h>
> +#include <Library/PerformanceLib.h>
> 
>  #define STACK_SIZE      0x20000
>  #define BSP_STORE_SIZE  0x4000
> 
> 
> diff --git a/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf 
> b/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
> index 7deeb8f270..302934283a 100644
> --- a/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
> +++ b/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
> @@ -77,10 +77,11 @@
>    BaseLib
>    PeimEntryPoint
>    DebugLib
>    DebugAgentLib
>    PeiServicesTablePointerLib
> +  PerformanceLib
> 
>  [LibraryClasses.ARM, LibraryClasses.AARCH64]
>    ArmMmuLib
> 
>  [Ppis]
> diff --git a/MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c 
> b/MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c
> index d5aa0474b0..8a939b6c24 100644
> --- a/MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c
> +++ b/MdeModulePkg/Core/DxeIplPeim/Ia32/DxeLoadFunc.c
> @@ -318,11 +318,13 @@ HandOffToDxeCore (
>      PageTables = CreateIdentityMappingPageTables (BaseOfStack, STACK_SIZE);
> 
>      //
>      // End of PEI phase signal
>      //
> +    PERF_EVENT_SIGNAL_BEGIN (gEndOfPeiSignalPpi.Guid);
>      Status = PeiServicesInstallPpi (&gEndOfPeiSignalPpi);
> +    PERF_EVENT_SIGNAL_END (gEndOfPeiSignalPpi.Guid);
>      ASSERT_EFI_ERROR (Status);
> 
>      AsmWriteCr3 (PageTables);
> 
>      //
> @@ -435,11 +437,13 @@ HandOffToDxeCore (
>      }
> 
>      //
>      // End of PEI phase signal
>      //
> +    PERF_EVENT_SIGNAL_BEGIN (gEndOfPeiSignalPpi.Guid);
>      Status = PeiServicesInstallPpi (&gEndOfPeiSignalPpi);
> +    PERF_EVENT_SIGNAL_END (gEndOfPeiSignalPpi.Guid);
>      ASSERT_EFI_ERROR (Status);
> 
>      if (BuildPageTablesIa32Pae) {
>        AsmWriteCr3 (PageTables);
>        //
> --
> 2.14.3.windows.1
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to