Add a new API DebugVPrint to all the instances of DebugLib. This API is added to provide a function who want to implement special debug function with '...' parameter. Add a PEIM to install gEdkiiDebugPpiGuid, and implement a PEI debug library instance base on it. All PEIMs except pei core type can use the PeiDebugLibDebugPpi to reduce its image size.
V2: Remove redundant code in DebugPrint. Fix some coding sytle issues. Remove some unenforced descirption in the comments of DebugVPrint. V3: Add the new API DebugBPrint, it is more useful for consumers which are care of compatible issue. Change the interface in gEdkiiDebugPpiGuid. VA_LIST is inappropriate to appeared in protocol or ppi because different compilers compile it to different type. It may be a pointer or a structure. V4: Sync the implement on MdeModulePkg/PeiDxeDebugLibReportStatusCode to IntelFramworkModulePkg/PeiDxeDebugLibReportStatusCode. While the format string is too long just truncate it instead of return. Fix and update some functions' comments. V5: Correct some comments of inf file. Put all implement into one C file for DebugServicePei. Use the directly return instead of CpuDeadLoop in PeiDebugLibDebugPpi. Rename the mDebugPpi to mEdkiiDebugPpi because it has a same name in DeubServicePpi. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Zhichao Gao <zhichao....@intel.com> Cc: Michael D Kinney <michael.d.kin...@intel.com> Cc: Leif Lindholm <leif.lindh...@linaro.org> Cc: Ard Biesheuvel <ard.biesheu...@linaro.org> Cc: Jordan Justen <jordan.l.jus...@intel.com> Cc: Laszlo Ersek <ler...@redhat.com> Cc: Chasel Chiu <chasel.c...@intel.com> Cc: Nate DeSimone <nathaniel.l.desim...@intel.com> Cc: Star Zeng <star.z...@intel.com> Cc: Nate DeSimone <nathaniel.l.desim...@intel.com> Cc: Jian J Wang <jian.j.w...@intel.com> Cc: Hao Wu <hao.a...@intel.com> Cc: Ray Ni <ray...@intel.com> Cc: Liming Gao <liming....@intel.com> Cc: Sean Brogan <sean.bro...@microsoft.com> Cc: Michael Turner <michael.tur...@microsoft.com> Cc: Bret Barkelew <bret.barke...@microsoft.com> Bret Barkelew (13): MdePkg/DebugLib.h: Add new APIs for DebugLib MdePkg/BaseDebugLibNull: Add new APIs for DebugLib MdePkg/BaseDebugLibSerialPort: Add new APIs MdePkg/UefidebugLibConOut: Add new APIs MdePkg/UefiDebugLibStdErr: Add new APIs MdePkg/DxeRuntimeDebugLibSerialPort: Add new APIs MdePkg/UefiDebuglibDebugPortProtocol: Add new APIs ArmPkg/SemiHostingDebugLib: Add new APIs OvmfPkg/PlatformDebugLibIoPort: Add new APIs IntelFsp2Pkg/BaseFspDebugLibSerialPort: Add new APIs IntelFspPkg/BaseFspDebugLibSerialPort: Add new APIs IntelFramworkModulePkg/PeiDxeDebugLibReportStatusCode: Add new APIs MdeModulePkg/PeiDxeDebugLibReportStatusCode: Add new APIs Liming Gao (1): MdeModulePkg/PeiDebugLibDebugPpi: Add PEI debug lib Zhichao Gao (3): MdeModulePkg: Add definitions for EDKII DEBUG PPI MdeModulePkg: Add a PEIM to install Debug PPI MdeModulePkg: Add PEIM and lib to dsc file ArmPkg/Library/SemiHostingDebugLib/DebugLib.c | 106 +++- .../PeiDxeDebugLibReportStatusCode/DebugLib.c | 179 +++++-- .../BaseFspDebugLibSerialPort/DebugLib.c | 103 +++- .../BaseFspDebugLibSerialPort/DebugLib.c | 103 +++- MdeModulePkg/Include/Ppi/Debug.h | 82 ++++ .../Library/PeiDebugLibDebugPpi/DebugLib.c | 456 ++++++++++++++++++ .../PeiDebugLibDebugPpi.inf | 56 +++ .../PeiDxeDebugLibReportStatusCode/DebugLib.c | 177 +++++-- MdeModulePkg/MdeModulePkg.dec | 3 + MdeModulePkg/MdeModulePkg.dsc | 3 + .../Universal/DebugServicePei/DebugService.h | 56 +++ .../DebugServicePei/DebugServicePei.c | 100 ++++ .../DebugServicePei/DebugServicePei.inf | 51 ++ .../DebugServicePei/DebugServicePei.uni | 20 + MdePkg/Include/Library/DebugLib.h | 52 +- MdePkg/Library/BaseDebugLibNull/DebugLib.c | 56 ++- .../Library/BaseDebugLibSerialPort/DebugLib.c | 106 +++- .../DxeRuntimeDebugLibSerialPort/DebugLib.c | 106 +++- MdePkg/Library/UefiDebugLibConOut/DebugLib.c | 106 +++- .../UefiDebugLibDebugPortProtocol/DebugLib.c | 106 +++- MdePkg/Library/UefiDebugLibStdErr/DebugLib.c | 107 +++- .../Library/PlatformDebugLibIoPort/DebugLib.c | 106 +++- 22 files changed, 2132 insertions(+), 108 deletions(-) create mode 100644 MdeModulePkg/Include/Ppi/Debug.h create mode 100644 MdeModulePkg/Library/PeiDebugLibDebugPpi/DebugLib.c create mode 100644 MdeModulePkg/Library/PeiDebugLibDebugPpi/PeiDebugLibDebugPpi.inf create mode 100644 MdeModulePkg/Universal/DebugServicePei/DebugService.h create mode 100644 MdeModulePkg/Universal/DebugServicePei/DebugServicePei.c create mode 100644 MdeModulePkg/Universal/DebugServicePei/DebugServicePei.inf create mode 100644 MdeModulePkg/Universal/DebugServicePei/DebugServicePei.uni -- 2.21.0.windows.1 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel