From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 622E38207E for ; Thu, 2 Feb 2017 20:55:47 -0800 (PST) Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga103.fm.intel.com with ESMTP; 02 Feb 2017 20:55:46 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,327,1477983600"; d="scan'208";a="54961005" Received: from mdkinney-mobl.amr.corp.intel.com ([10.252.133.81]) by orsmga004.jf.intel.com with ESMTP; 02 Feb 2017 20:55:46 -0800 From: Michael Kinney To: edk2-devel@lists.01.org Cc: Andrew Fish , Liming Gao , Jiewen Yao , Cinnamon Shia , Jaben Carsey , Star Zeng Date: Thu, 2 Feb 2017 20:55:34 -0800 Message-Id: <1486097737-12816-1-git-send-email-michael.d.kinney@intel.com> X-Mailer: git-send-email 2.6.3.windows.1 Subject: [PATCH v4 0/3] Remove TimerLib dependency from DP X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Feb 2017 04:55:47 -0000 Current DP implementation depends on TimerLib, as different platforms may implement and use their own TimerLib, it makes the dp needs to be built by platform. The TimerLib dependency can be removed by using performance property configuration table to make DP to be generic. There was a discussion on edk2-devel about supporting use of different TimerLib instances in different modules and updating the performance log to support measurements with different timer rates. A complete solution for this has not been found. This patch series that allows the DP command to get the timer rate from a system configuration table is useful on its own because it allows the DP shell command to be independent of the TimerLib used to collect the performance logs. V3: Define and install performance property configuration table instead of extending PEI performance log HOB. As user may want to only dump DXE or SMM performance data, then PeiPerformanceLib will be not linked and PEI performance log HOB will be not built. V4: Change name of field in PERFORMANCE_PROPERTY from CpuFreq to Frequency. Cc: Andrew Fish Cc: Michael Kinney Cc: Liming Gao Cc: Jiewen Yao Cc: Cinnamon Shia Cc: Jaben Carsey Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng Star Zeng (3): MdeModulePkg: Add performance property configuration table PerformancePkg Dp_App: Remove TimerLib dependency ShellPkg UefiDpLib: Remove TimerLib dependency MdeModulePkg/Include/Guid/Performance.h | 12 +++++++- .../DxeCorePerformanceLib/DxeCorePerformanceLib.c | 23 ++++++++++++-- .../DxeCorePerformanceLib.inf | 2 ++ .../DxeCorePerformanceLibInternal.h | 3 +- .../SmmCorePerformanceLib/SmmCorePerformanceLib.c | 18 +++++++++++ .../SmmCorePerformanceLib.inf | 5 +++- PerformancePkg/Dp_App/Dp.c | 35 +++++++++++----------- PerformancePkg/Dp_App/Dp.inf | 6 ++-- PerformancePkg/Dp_App/DpInternal.h | 6 ++-- PerformancePkg/Dp_App/DpProfile.c | 3 +- PerformancePkg/Dp_App/DpStrings.uni | 10 ++++--- PerformancePkg/Dp_App/DpTrace.c | 25 ++-------------- PerformancePkg/Dp_App/DpUtilities.c | 3 +- PerformancePkg/Dp_App/Literals.c | 3 +- ShellPkg/Library/UefiDpLib/Dp.c | 29 +++++++----------- ShellPkg/Library/UefiDpLib/DpInternal.h | 6 ++-- ShellPkg/Library/UefiDpLib/DpProfile.c | 3 +- ShellPkg/Library/UefiDpLib/DpTrace.c | 25 ++-------------- ShellPkg/Library/UefiDpLib/DpUtilities.c | 3 +- ShellPkg/Library/UefiDpLib/Literals.c | 3 +- ShellPkg/Library/UefiDpLib/UefiDpLib.inf | 6 ++-- ShellPkg/Library/UefiDpLib/UefiDpLib.uni | 3 +- ShellPkg/ShellPkg.dsc | 3 +- 23 files changed, 117 insertions(+), 118 deletions(-) -- 2.6.3.windows.1