This solution does not make sense to me.

 

Please start a discussion with MdePkg owner at first.

 

Thank you

Yao Jiewen

 

From: Reji, RencyX <rencyx.reji@intel.com>
Sent: Wednesday, December 15, 2021 1:39 PM
To: devel@edk2.groups.io; Yao, Jiewen <jiewen.yao@intel.com>
Cc: Zhang, Qi1 <qi1.zhang@intel.com>; Kumar, Rahul1 <rahul1.kumar@intel.com>; Wang, Jian J <jian.j.wang@intel.com>; H, Krishnaprasad <krishnaprasad.h@intel.com>; Patil, Subhashini <subhashini.patil@intel.com>; Krishnappa, Banuprakash <banuprakash.krishnappa@intel.com>
Subject: RE: RE: [PATCH] SecurityPkg: Debug trace package integration to enable debug message capture on all targets.

 

Hi All,

 

Please find the Bugzilla link created for the changes : https://bugzilla.tianocore.org/show_bug.cgi?id=3772

 

Thanks,

Rency

 

 

From: Reji, RencyX
Sent: Friday, December 10, 2021 2:10 PM
To: devel@edk2.groups.io; Yao, Jiewen <jiewen.yao@intel.com>
Cc: Zhang, Qi1 <qi1.zhang@intel.com>; Kumar, Rahul1 <Rahul1.Kumar@intel.com>; Wang, Jian J <jian.j.wang@intel.com>; H, Krishnaprasad <krishnaprasad.h@intel.com>; Patil, Subhashini <subhashini.patil@intel.com>; Krishnappa, Banuprakash <banuprakash.krishnappa@intel.com>
Subject: RE: [PATCH] SecurityPkg: Debug trace package integration to enable debug message capture on all targets.

 

Hi All,

 

 

We are developing a feature which will enable users to collect debug traces for all build targets(production & engineering builds). This feature would work even when no debug interfaces are available on systems. To support this feature we are required to extend the capability of the existing DebugLib implementation by supplementing it with a library that has the required extensions. We have done this implementation such that it can work with or without this feature enabled by encapsulating the changes within EXT_DEBUG macro. This way we are ensuring that our changes are not effecting the behavior of the DebugLib functionality in any way .Enabling this feature would require redefinition of the debug macro defined in debuglib while maintaining compatibility on builds without this feature . Since we are extending capability of DebugLib we are required to selectively define/redefine the macro definition based on the target of choice.

 

Please find the below flow chart.

 

 

 

 

@Yao, Jiewen  , We have some changes in Platform package of our Intel folder where we are using ExtDebug null libraries as shown below. So we have to add ExtDebuglib under library section in those inf files.

 

  #TPM

  SecurityPkg/Tcg/PhysicalPresencePei/PhysicalPresencePei.inf {

    <LibraryClasses>

      DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf

!if $(EXT_DBG) == TRUE

      ExtDebugLib|MdePkg/Library/BaseExtDebugLibNull/BaseExtDebugLibNull.inf

!endif

  }

 

 

              

Thanks,

Rency

 

-----Original Message-----
From: Reji, RencyX rencyx.reji@intel.com
Sent: Wednesday, December 8, 2021 5:52 PM
To: devel@edk2.groups.io
Cc: Reji, RencyX rencyx.reji@intel.com; Zhang, Qi1 qi1.zhang@intel.com; Kumar, Rahul1 rahul1.kumar@intel.com; Yao, Jiewen jiewen.yao@intel.com; Wang, Jian J jian.j.wang@intel.com
Subject: [PATCH] SecurityPkg: Debug trace package integration to enable debug message capture on all targets.

 

We are introducing a new feature where we will be using a device to collect debug messages to extend capability of debug beyond current scope. We are required to extend capability of debug library by changing debug macro expression and collect debug messages for all target such as Debug, Release and Silent.

 

Cc: Qi Zhang <qi1.zhang@intel.com>

Cc: Rahul Kumar <rahul1.kumar@intel.com>

Cc: Jiewen Yao <jiewen.yao@intel.com>

Cc: Jian J Wang <jian.j.wang@intel.com>

Signed-off-by: Rency Reji <RencyX.Reji@intel.com>

---

SecurityPkg/SecurityPkg.dsc                                 | 1 +

SecurityPkg/Tcg/PhysicalPresencePei/PhysicalPresencePei.inf | 1 +

SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.inf                         | 1 +

SecurityPkg/Tcg/TcgPei/TcgPei.inf                           | 1 +

4 files changed, 4 insertions(+)

 

diff --git a/SecurityPkg/SecurityPkg.dsc b/SecurityPkg/SecurityPkg.dsc index 73a93c2285..0f1b3d62e9 100644

--- a/SecurityPkg/SecurityPkg.dsc

+++ b/SecurityPkg/SecurityPkg.dsc

@@ -72,6 +72,7 @@

   MmUnblockMemoryLib|MdePkg/Library/MmUnblockMemoryLib/MmUnblockMemoryLibNull.inf

   SecureBootVariableLib|SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.inf

   SecureBootVariableProvisionLib|SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariableProvisionLib.inf

+  ExtDebugLib|MdePkg/Library/BaseExtDebugLib/BaseExtDebugLib.inf

 

 [LibraryClasses.ARM, LibraryClasses.AARCH64]

   #

diff --git a/SecurityPkg/Tcg/PhysicalPresencePei/PhysicalPresencePei.inf b/SecurityPkg/Tcg/PhysicalPresencePei/PhysicalPresencePei.inf

index 653dc1f64f..0b8c6af3b0 100644

--- a/SecurityPkg/Tcg/PhysicalPresencePei/PhysicalPresencePei.inf

+++ b/SecurityPkg/Tcg/PhysicalPresencePei/PhysicalPresencePei.inf

@@ -38,6 +38,7 @@

[LibraryClasses]

   PeimEntryPoint

   PeiServicesLib

+  ExtDebugLib

 

 [Ppis]

   gPeiLockPhysicalPresencePpiGuid                       ## PRODUCES

diff --git a/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.inf b/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.inf

index 06c26a2904..a11cf661ab 100644

--- a/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.inf

+++ b/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.inf

@@ -55,6 +55,7 @@

   ReportStatusCodeLib

   ResetSystemLib

   PrintLib

+  ExtDebugLib

 

 [Guids]

   gTcgEventEntryHobGuid                                                ## PRODUCES               ## HOB

diff --git a/SecurityPkg/Tcg/TcgPei/TcgPei.inf b/SecurityPkg/Tcg/TcgPei/TcgPei.inf

index 2e3e7e0575..90d55e7256 100644

--- a/SecurityPkg/Tcg/TcgPei/TcgPei.inf

+++ b/SecurityPkg/Tcg/TcgPei/TcgPei.inf

@@ -52,6 +52,7 @@

   ReportStatusCodeLib

   Tpm12CommandLib

   PerformanceLib

+  ExtDebugLib

 

 [Guids]

   gTcgEventEntryHobGuid                                               ## PRODUCES               ## HOB

--

2.34.1.windows.1