Min Xu 
							
						 
					 
					
						
						
							
						
						c3001cb744 
					 
					
						
						
							
							MdePkg: Add TdxLib to wrap Tdx operations  
						
						... 
						
						
						
						RFC: https://bugzilla.tianocore.org/show_bug.cgi?id=3429 
TdxLib is created with functions to perform the related Tdx operation.
This includes functions for:
 - TdAcceptPages   : Accept pending private pages and initialize the pages
                     to all-0 using the TD ephemeral private key.
 - TdExtendRtmr    : Extend measurement to one of the RTMR registers.
 - TdSharedPageMask: Get the Td guest shared page mask which indicates it
                     is a Shared or Private page.
 - TdMaxVCpuNum    : Get the maximum number of virtual CPUs.
 - TdVCpuNum       : Get the number of virtual CPUs.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Brijesh Singh <brijesh.singh@amd.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Signed-off-by: Min Xu <min.m.xu@intel.com > 
						
						
					 
					
						2022-04-02 08:15:12 +00:00 
						 
				 
			
				
					
						
							
							
								Min Xu 
							
						 
					 
					
						
						
							
						
						818bc9596d 
					 
					
						
						
							
							MdePkg: Introduce basic Tdx functions in BaseLib  
						
						... 
						
						
						
						RFC: https://bugzilla.tianocore.org/show_bug.cgi?id=3429 
Introduce basic Tdx functions in BaseLib:
 - TdCall ()
 - TdVmCall ()
 - TdIsEnabled ()
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Brijesh Singh <brijesh.singh@amd.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Acked-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Signed-off-by: Min Xu <min.m.xu@intel.com > 
						
						
					 
					
						2022-04-02 08:15:12 +00:00 
						 
				 
			
				
					
						
							
							
								Michael Kubacki 
							
						 
					 
					
						
						
							
						
						2f88bd3a12 
					 
					
						
						
							
							MdePkg: Apply uncrustify changes  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737 
Apply uncrustify changes to .c/.h files in the MdePkg package
Cc: Andrew Fish <afish@apple.com >
Cc: Leif Lindholm <leif@nuviainc.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn > 
						
						
					 
					
						2021-12-07 17:24:28 +00:00 
						 
				 
			
				
					
						
							
							
								Michael D Kinney 
							
						 
					 
					
						
						
							
						
						d0e2f8232a 
					 
					
						
						
							
							MdePkg: Change OPTIONAL keyword usage style  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3760 
Update all use of ', OPTIONAL' to ' OPTIONAL,' for function params.
Cc: Andrew Fish <afish@apple.com >
Cc: Leif Lindholm <leif@nuviainc.com >
Cc: Michael Kubacki <michael.kubacki@microsoft.com >
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn > 
						
						
					 
					
						2021-12-07 17:24:28 +00:00 
						 
				 
			
				
					
						
							
							
								Michael D Kinney 
							
						 
					 
					
						
						
							
						
						5f289f3ae3 
					 
					
						
						
							
							MdePkg: Change use of EFI_D_* to DEBUG_*  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3739 
Update all use of EFI_D_* defines in DEBUG() macros to DEBUG_* defines.
Cc: Andrew Fish <afish@apple.com >
Cc: Leif Lindholm <leif@nuviainc.com >
Cc: Michael Kubacki <michael.kubacki@microsoft.com >
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn > 
						
						
					 
					
						2021-12-07 17:24:28 +00:00 
						 
				 
			
				
					
						
							
							
								Michael D Kinney 
							
						 
					 
					
						
						
							
						
						5948ec3647 
					 
					
						
						
							
							MdePkg: Reproduce builds across source format changes  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3688 
* Use DEBUG_LINE_NUMBER instead of __LINE__.
* Use DEBUG_EXPRESSION_STRING instead of #Expression.
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Michael Kubacki <michael.kubacki@microsoft.com >
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Tested-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn > 
						
						
					 
					
						2021-11-08 18:01:35 +00:00 
						 
				 
			
				
					
						
							
							
								Michael D Kinney 
							
						 
					 
					
						
						
							
						
						48452993ad 
					 
					
						
						
							
							MdePkg/Include: Enhance DebugLib to support reproduce builds  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3688 
* Add DEBUG_LINE_NUMBER define to DebugLib.h that is
  by default mapped to __LINE__.  A build can define
  DEBUG_LINE_NUMBER to use a fixed value.
* Add DEBUG_EXPRESSION_STRING(Expression) macros to
  DebugLib.h that is by default mapped to #Expression.
  A build can define DEBUG_EXPRESSION_STRING_VALUE to
  set all expression strings to a fixed string value.
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Michael Kubacki <michael.kubacki@microsoft.com >
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Tested-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn > 
						
						
					 
					
						2021-11-08 18:01:35 +00:00 
						 
				 
			
				
					
						
							
							
								IanX Kuo 
							
						 
					 
					
						
						
							
						
						4225a464c6 
					 
					
						
						
							
							MdePkg/BaseLib: Add QuickSort function on BaseLib  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3675 
Add QuickSort function into BaseLib
Reviewed-by: Ray Ni <ray.ni@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Signed-off-by: IanX Kuo <ianx.kuo@intel.com > 
						
						
					 
					
						2021-10-13 02:37:37 +00:00 
						 
				 
			
				
					
						
							
							
								Tom Lendacky 
							
						 
					 
					
						
						
							
						
						2b5b2ff04d 
					 
					
						
						
							
							MdePkg/BaseLib: add support for RMPADJUST instruction  
						
						... 
						
						
						
						BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3275 
The RMPADJUST instruction will be used by the SEV-SNP guest to modify the
RMP permissions for a guest page. See AMD APM volume 3 for further
details.
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: Min Xu <min.m.xu@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
Cc: Jordan Justen <jordan.l.justen@intel.com >
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org >
Cc: Laszlo Ersek <lersek@redhat.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Reviewed-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com >
Signed-off-by: Brijesh Singh <brijesh.singh@amd.com >
Message-Id: <20210519181949.6574-9-brijesh.singh@amd.com > 
						
						
					 
					
						2021-05-29 12:15:21 +00:00 
						 
				 
			
				
					
						
							
							
								Brijesh Singh 
							
						 
					 
					
						
						
							
						
						5a7cbd54a1 
					 
					
						
						
							
							MdePkg/BaseLib: add support for PVALIDATE instruction  
						
						... 
						
						
						
						BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3275 
The PVALIDATE instruction validates or rescinds validation of a guest
page RMP entry. Upon completion, a return code is stored in EAX, rFLAGS
bits OF, ZF, AF, PF and SF are set based on this return code. If the
instruction completed succesfully, the rFLAGS bit CF indicates if the
contents of the RMP entry were changed or not.
For more information about the instruction see AMD APM volume 3.
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: Min Xu <min.m.xu@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
Cc: Jordan Justen <jordan.l.justen@intel.com >
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org >
Cc: Laszlo Ersek <lersek@redhat.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
Reviewed-by: Laszlo Ersek <lersek@redhat.com >
Signed-off-by: Brijesh Singh <brijesh.singh@amd.com >
Message-Id: <20210519181949.6574-8-brijesh.singh@amd.com > 
						
						
					 
					
						2021-05-29 12:15:21 +00:00 
						 
				 
			
				
					
						
							
							
								Jiaxin Wu 
							
						 
					 
					
						
						
							
						
						4ac0296201 
					 
					
						
						
							
							MdePkg/BaseLib: Add support for the XSETBV instruction  
						
						... 
						
						
						
						*v2: refine the coding format.
https://bugzilla.tianocore.org/show_bug.cgi?id=3284 
This patch is to support XSETBV instruction so as to support
Extended Control Register(XCR) write.
Extended Control Register(XCR) read has already been supported
by below commit to support XGETBV instruction:
9b3ca509abmichael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Ni Ray <ray.ni@intel.com >
Cc: Yao Jiewen <jiewen.yao@intel.com >
Signed-off-by: Jiaxin Wu <Jiaxin.wu@intel.com >
Signed-off-by: Zhang Hongbin1 <hongbin1.zhang@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn > 
						
						
					 
					
						2021-04-06 00:43:49 +00:00 
						 
				 
			
				
					
						
							
							
								Dandan Bi 
							
						 
					 
					
						
						
							
						
						1c11e7a214 
					 
					
						
						
							
							MdePkg: Add RegisterFilterLib class and NULL instance  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3246 
1. Add a new library class (RegisterFilterLib) to filter
and trace port IO/MMIO/MSR access.
2. Add a NULL instance (RegisterFilterLibNull) can be used
to keep current behavior.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Signed-off-by: Dandan Bi <dandan.bi@intel.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Reviewed-by: Abner Chang <abner.chang@hpe.com > 
						
						
					 
					
						2021-03-30 12:48:30 +00:00 
						 
				 
			
				
					
						
							
							
								Jiaxin Wu 
							
						 
					 
					
						
						
							
						
						9fd7e88c23 
					 
					
						
						
							
							MdePkg: Support standalone MM Driver Unload capability  
						
						... 
						
						
						
						https://bugzilla.tianocore.org/show_bug.cgi?id=3240 
This patch is to support standalone MM Driver Unload capability
by providing _DriverUnloadHandler() function.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Siyuan Fu <siyuan.fu@intel.com >
Signed-off-by: Jiaxin Wu <Jiaxin.wu@intel.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn > 
					
						2021-03-18 04:16:21 +00:00 
						 
				 
			
				
					
						
							
							
								Kun Qin 
							
						 
					 
					
						
						
							
						
						7cda5d9e3a 
					 
					
						
						
							
							MdePkg: MmUnblockMemoryLib: Added definition and null instance  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3168 
This interface provides an abstration layer to allow MM modules to access
requested areas that are outside of MMRAM. On MM model that blocks all
non-MMRAM accesses, areas requested through this API will be mapped or
unblocked for accessibility inside MM environment.
For MM modules that need to access regions outside of MMRAMs, the agents
that set up these regions are responsible for invoking this API in order
for these memory areas to be accessible from inside MM.
Example usages:
1. To enable runtime cache feature for variable service, Variable MM
module will need to access the allocated runtime buffer. Thus the agent
sets up these buffers, VariableSmmRuntimeDxe, will need to invoke this
API to make these regions accessible by Variable MM.
2. For TPM ACPI table to communicate to physical presence handler, the
corresponding NVS region has to be accessible from inside MM. Once the
NVS region are assigned, it needs to be unblocked thourgh this API.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Laszlo Ersek <lersek@redhat.com >
Signed-off-by: Kun Qin <kun.q@outlook.com >
Acked-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
Message-Id: <MWHPR06MB31028AF0D0785B93E4E7CF63F3969@MWHPR06MB3102.namprd06.prod.outlook.com > 
						
						
					 
					
						2021-03-05 15:25:07 +00:00 
						 
				 
			
				
					
						
							
							
								Zhang, Shenglei 
							
						 
					 
					
						
						
							
						
						9c1f455f5f 
					 
					
						
						
							
							MdePkg: Remove code wrapped by DISABLE_NEW_DEPRECATED_INTERFACES  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2777 
Code wrapped by DISABLE_NEW_DEPRECATED_INTERFACES is deprecated.
So remove it.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn > 
						
						
					 
					
						2020-10-13 01:35:03 +00:00 
						 
				 
			
				
					
						
							
							
								Marcello Sylvester Bauer 
							
						 
					 
					
						
						
							
						
						5c06585528 
					 
					
						
						
							
							MdePkg: PciExpressLib support variable size MMCONF  
						
						... 
						
						
						
						Add support for arbitrary sized MMCONF by introducing a new PCD.
Add a return value to point out invalid PCI addresses.
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com >
Signed-off-by: Marcello Sylvester Bauer <marcello.bauer@9elements.com >
Cc: Patrick Rudolph <patrick.rudolph@9elements.com >
Cc: Christian Walter <christian.walter@9elements.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn > 
						
						
					 
					
						2020-09-16 06:36:18 +00:00 
						 
				 
			
				
					
						
							
							
								Tom Lendacky 
							
						 
					 
					
						
						
							
						
						f8422f1e0b 
					 
					
						
						
							
							MdePkg/BaseLib: Add support for the VMGEXIT instruction  
						
						... 
						
						
						
						BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=2198 
VMGEXIT is a new instruction used for Hypervisor/Guest communication when
running as an SEV-ES guest. A VMGEXIT will cause an automatic exit (AE)
to occur, resulting in a #VMEXIT with an exit code value of 0x403.
Since SEV-ES is only supported in X64, provide the necessary X64 support
to execute the VMGEXIT instruction, which is coded as "rep vmmcall". For
IA32, since "vmmcall" is not supported in NASM 32-bit mode and VMGEXIT
should never be called, provide a stub implementation that is identical
to CpuBreakpoint().
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Reviewed-by: Laszlo Ersek <lersek@redhat.com >
Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com >
Regression-tested-by: Laszlo Ersek <lersek@redhat.com > 
						
						
					 
					
						2020-08-16 16:45:42 +00:00 
						 
				 
			
				
					
						
							
							
								Tom Lendacky 
							
						 
					 
					
						
						
							
						
						9b3ca509ab 
					 
					
						
						
							
							MdePkg/BaseLib: Add support for the XGETBV instruction  
						
						... 
						
						
						
						BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=2198 
Under SEV-ES, a CPUID instruction requires the current value of the XCR0
register. In order to retrieve that value, the XGETBV instruction needs
to be executed.
Provide the necessary support to execute the XGETBV instruction.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com >
Regression-tested-by: Laszlo Ersek <lersek@redhat.com > 
						
						
					 
					
						2020-08-16 16:45:42 +00:00 
						 
				 
			
				
					
						
							
							
								Michael D Kinney 
							
						 
					 
					
						
						
							
						
						133891b712 
					 
					
						
						
							
							MdePkg/Include: Add UT_EXPECT_ASSERT_FAILURE() to UnitTestLib  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2801 
Add the UT_EXPECT_ASSERT_FAILURE(FunctionCall, Status) macro
to the UnitTestLib that can be used to check if a function
under test triggers an ASSERT() condition.  If an ASSERT()
condition is triggered, then the macro returns.  If the
ASSERT() condition is not triggered, then the current unit
test fails with a status of UNIT_TEST_ERROR_TEST_FAILED.
If ASSERT()s are disabled, then this check for ASSERT()
behavior is not possible, and the check is skipped.
The global variable gUnitTestExpectAssertFailureJumpBuffer
is added to the UnitTestLib to save/restore context when
the UT_EXPECT_ASSERT_FAILURE(FunctionCall, Status) macro
is used.  The UT_EXPECT_ASSERT_FAILURE() macro uses the
SetJump() service with this global variable.  The UnitTestLib
service UnitTestDebugAssert() uses the LongJump() service
with this global to restore context if an ASSERT() is
triggered by the code under test.
Add UnitTestExpectAssertFailure() to the UnitTestLib class.
The UnitTestExpectAssertFailure() is called from the new
UT_EXPECT_ASSERT_FAILURE() macro after the status of this
macro check is known.
Add UnitTestDebugAssert() to the UnitTestLib class.  The
UnitTestDebugAssert() service is the same as the DebugLib
DebugAssert() service and is invoked from the DebugLib
_ASSERT() macro if unit testing is enabled.  This allows the
Unit Test Framework to know when code under test triggers an
ASSERT() condition.
Cc: Liming Gao <liming.gao@intel.com >
Cc: Sean Brogan <sean.brogan@microsoft.com >
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2020-07-15 05:25:21 +00:00 
						 
				 
			
				
					
						
							
							
								Michael D Kinney 
							
						 
					 
					
						
						
							
						
						75e92c1354 
					 
					
						
						
							
							MdePkg/Include: Hook DebugLib _ASSERT() for unit tests  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2801 
Update DebugLib.h _ASSERT() macro to check if unit testing
is enabled and call UnitTestDebugAssert() instead of
DebugAssert() so the an ASSERT() condition that is triggered
by a function under test can be handled by the Unit Test
Framework.
If EDKII_UNIT_TEST_FRAMEWORK_ENABLED is not defined, then
the existing DebugLib behavior is preserved.
Cc: Liming Gao <liming.gao@intel.com >
Cc: Sean Brogan <sean.brogan@microsoft.com >
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2020-07-15 05:25:21 +00:00 
						 
				 
			
				
					
						
							
							
								Ray Ni 
							
						 
					 
					
						
						
							
						
						03013d999c 
					 
					
						
						
							
							MdePkg/PciSegmentInfoLib: Add missing EFIAPI to GetPciSegmentInfo()  
						
						... 
						
						
						
						All public APIs should have EFIAPI modifier. Somehow PciSegmentInfoLib
missed the EFIAPI modifier.
The patch updates the library header file and NULL instance in MdePkg
to add the missing EFIAPI.
Signed-off-by: Ray Ni <ray.ni@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Cc: Zhiguang Liu <zhiguang.liu@intel.com > 
						
						
					 
					
						2020-06-24 05:46:27 +00:00 
						 
				 
			
				
					
						
							
							
								Michael Kubacki 
							
						 
					 
					
						
						
							
						
						4260c47867 
					 
					
						
						
							
							MdePkg/UnitTestLib.h: Drop FrameworkHandle param from SaveFrameworkState()  
						
						... 
						
						
						
						REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2612 
The framework handle can be retrieved from GetActiveFrameworkHandle()
internal to SaveFrameworkState() so this change removes the parameter
from the function signature.
Cc: Bret Barkelew <brbarkel@microsoft.com >
Cc: Liming Gao <liming.gao@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Bret Barkelew <bret.barkelew@microsoft.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Zhiguang Liu <zhiguang.liu@intel.com > 
						
						
					 
					
						2020-06-14 23:56:05 +00:00 
						 
				 
			
				
					
						
							
							
								Vitaly Cheptsov 
							
						 
					 
					
						
						
							
						
						09fe015af9 
					 
					
						
						
							
							MdePkg: Fix SafeString performing assertions on runtime checks  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2054 
Runtime checks returned via status return code should not work as
assertions to permit parsing not trusted data with SafeString
interfaces.  Replace ASSERT() with a DEBUG_VERBOSE message.
Cc: Andrew Fish <afish@apple.com >
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org >
Cc: Bret Barkelew <bret.barkelew@microsoft.com >
Cc: Brian J. Johnson <brian.johnson@hpe.com >
Cc: Chasel Chiu <chasel.chiu@intel.com >
Cc: Jordan Justen <jordan.l.justen@intel.com >
Cc: Laszlo Ersek <lersek@redhat.com >
Cc: Leif Lindholm <leif@nuviainc.com >
Cc: Liming Gao <liming.gao@intel.com >
Cc: Marvin Häuser <mhaeuser@outlook.de >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Vincent Zimmer <vincent.zimmer@intel.com >
Cc: Zhichao Gao <zhichao.gao@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Signed-off-by: Vitaly Cheptsov <vit9696@protonmail.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Reviewed-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Bret Barkelew <bret.barkelew@microsoft.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com > 
						
						
					 
					
						2020-05-22 00:03:14 +00:00 
						 
				 
			
				
					
						
							
							
								Abner Chang 
							
						 
					 
					
						
						
							
						
						7601b251fd 
					 
					
						
						
							
							MdePkg/BaseLib: BaseLib for RISCV64 architecture  
						
						... 
						
						
						
						Add RISC-V RV64 BaseLib functions.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2672 
Signed-off-by: Abner Chang <abner.chang@hpe.com >
Co-authored-by: Gilbert Chen <gilbert.chen@hpe.com >
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org >
Reviewed-by: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Cc: Leif Lindholm <leif.lindholm@linaro.org >
Cc: Gilbert Chen <gilbert.chen@hpe.com > 
						
						
					 
					
						2020-05-07 03:17:15 +00:00 
						 
				 
			
				
					
						
							
							
								Michael Kubacki 
							
						 
					 
					
						
						
							
						
						3b5a58c5f0 
					 
					
						
						
							
							MdePkg/BaseLib: Add linked list iteration macros  
						
						... 
						
						
						
						REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1959 
The macros EFI_LIST_FOR_EACH and EFI_LIST_FOR_EACH_SAFE have been
duplicated across several drivers. These macros have proven useful and
established a commonly used pattern for linked list iteration.
This change defines the macros in BaseLib.h alongside other generic linked
list macros and functions.
Cc: Dandan Bi <dandan.bi@intel.com >
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Reviewed-by: Bret Barkelew <bret.barkelew@microsoft.com > 
						
						
					 
					
						2020-04-21 02:20:51 +00:00 
						 
				 
			
				
					
						
							
							
								Zhiguang Liu 
							
						 
					 
					
						
						
							
						
						bd6aa93296 
					 
					
						
						
							
							MdePkg DebugLib: Enable FILE NAME as DEBUG ASSERT for CLANG  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1548 
For clang compiler, This change will make the generated image not include the
absolute file path. If so, the generated debug image can be reproduced in the
different root directory. Also, it will reduce the size of debug image size.
To do so, use __FILE_NAME__ macro to replace __FILE__. __FILE_NAME__ is
Clang-specific extension that functions similar to __FILE__ but only renders
the last path component (the filename) instead of an invocation dependent full
path to that file, and __FILE_NAME__ is introduced since clang 9.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Signed-off-by: Zhiguang Liu <zhiguang.liu@intel.com > 
						
						
					 
					
						2020-04-13 07:17:27 +00:00 
						 
				 
			
				
					
						
							
							
								Antoine Coeur 
							
						 
					 
					
						
						
							
						
						fae43d06dd 
					 
					
						
						
							
							MdePkg/Library/Smm: Fix various typos  
						
						... 
						
						
						
						Fix various typos in comments and documentation.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Antoine Coeur <coeur@gmx.fr >
Reviewed-by: Philippe Mathieu-Daude <philmd@redhat.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Signed-off-by: Philippe Mathieu-Daude <philmd@redhat.com >
Message-Id: <20200207010831.9046-27-philmd@redhat.com > 
						
						
					 
					
						2020-02-10 22:30:07 +00:00 
						 
				 
			
				
					
						
							
							
								Antoine Coeur 
							
						 
					 
					
						
						
							
						
						a8ecf980c0 
					 
					
						
						
							
							MdePkg/Library/Pci: Fix various typos  
						
						... 
						
						
						
						Fix various typos in comments and documentation.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Antoine Coeur <coeur@gmx.fr >
Reviewed-by: Philippe Mathieu-Daude <philmd@redhat.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Signed-off-by: Philippe Mathieu-Daude <philmd@redhat.com >
Message-Id: <20200207010831.9046-26-philmd@redhat.com > 
						
						
					 
					
						2020-02-10 22:30:07 +00:00 
						 
				 
			
				
					
						
							
							
								Antoine Coeur 
							
						 
					 
					
						
						
							
						
						c1d8b697cf 
					 
					
						
						
							
							MdePkg/Library/Dxe: Fix various typos  
						
						... 
						
						
						
						Fix various typos in documentation, comments and strings,
and remove the duplicated 'the'.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Antoine Coeur <coeur@gmx.fr >
Reviewed-by: Philippe Mathieu-Daude <philmd@redhat.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Signed-off-by: Philippe Mathieu-Daude <philmd@redhat.com >
Message-Id: <20200207010831.9046-25-philmd@redhat.com > 
						
						
					 
					
						2020-02-10 22:30:07 +00:00 
						 
				 
			
				
					
						
							
							
								Bret Barkelew 
							
						 
					 
					
						
						
							
						
						b238ce28f8 
					 
					
						
						
							
							MdePkg/Include/Library: Add UnitTestLib class  
						
						... 
						
						
						
						https://bugzilla.tianocore.org/show_bug.cgi?id=2505 
Add UnitTestLib class to MdePkg that provides services
and macros to implement unit tests.  These services and
macros support the following features:
* Create a Unit Test Framework
* Add a Unit Test Suite to a Unit Test Framework
  + Support optional step that executes before a Unit
    Test Suite is started.
  + Support optional step that executes after a Unit
    Test Suite is finished.
* Add a Unit Test to a Unit Test Suite
  + Support optional step that executes before a Unit
    Test is started.
  + Support optional step that executes after a Unit
    Test is finished.
* Run all unit tests added to a Unit Test Framework
* Save Unit Test Framework state to persistent storage
* Support assertion checks in a unit test for TRUE, FALSE,
  EQUAL, MEM_EQUAL, NOT_EFI_ERROR, STATUS_EQUAL, and NOT_NULL.
* Support generation of log messages at ERROR, WARN, INFO,
  and VERBOSE levels.
Cc: Sean Brogan <sean.brogan@microsoft.com >
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Bret Barkelew <Bret.Barkelew@microsoft.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Hao A Wu <hao.a.wu@intel.com > 
					
						2020-02-07 19:18:53 +00:00 
						 
				 
			
				
					
						
							
							
								Jason Voelz 
							
						 
					 
					
						
						
							
						
						859046e000 
					 
					
						
						
							
							MdePkg BaseLib.h: Update IA32_CR4 strut to include all public fields  
						
						... 
						
						
						
						Based on Intel Software Develeper's Manual, add all fields in IA32_CR4.
Signed-off-by: Jason Voelz <jason.voelz@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com > 
						
						
					 
					
						2020-01-10 03:41:55 +00:00 
						 
				 
			
				
					
						
							
							
								Shenglei Zhang 
							
						 
					 
					
						
						
							
						
						54a07f8fe0 
					 
					
						
						
							
							MdePkg: Update the comments of IsLanguageSupported  
						
						... 
						
						
						
						Keep the comment style of IsLanguageSupported align with
other functions.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-11-20 15:03:24 +00:00 
						 
				 
			
				
					
						
							
							
								Zurcher, Christopher J 
							
						 
					 
					
						
						
							
						
						9b14509b16 
					 
					
						
						
							
							MdePkg: Implement SCSI commands for Security Protocol In/Out  
						
						... 
						
						
						
						BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1546 
This patch implements the Security Protocol In and Security Protocol Out
commands in UefiScsiLib to prepare support for the Storage Security
Command Protocol.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Signed-off-by: Christopher J Zurcher <christopher.j.zurcher@intel.com >
Reviewed-by: Hao A Wu <hao.a.wu@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-09-29 16:43:45 +08:00 
						 
				 
			
				
					
						
							
							
								Tom Zhao 
							
						 
					 
					
						
						
							
						
						ea331a5c21 
					 
					
						
						
							
							MdePkg: UefiLib: Add a function to check if a language is supported  
						
						... 
						
						
						
						Add a function that checks if a target language is in the supported
languages list. Add some calls to this function where appropriate in
UefiLib.c
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Tom Zhao <tzhao@solarflare.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-09-17 09:39:04 +08:00 
						 
				 
			
				
					
						
							
							
								Laszlo Ersek 
							
						 
					 
					
						
						
							
						
						5d68fc6781 
					 
					
						
						
							
							MdePkg/BaseLib: re-specify Base64Decode(), and add temporary stub impl  
						
						... 
						
						
						
						Rewrite Base64Decode() from scratch, due to reasons listed in the second
reference below.
As first step, redo the interface contract, and replace the current
implementation with a stub that asserts FALSE, then fails.
Cc: Liming Gao <liming.gao@intel.com >
Cc: Marvin Häuser <mhaeuser@outlook.de >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Philippe Mathieu-Daudé <philmd@redhat.com >
Cc: Zhichao Gao <zhichao.gao@intel.com >
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1891 
Ref: http://mid.mail-archive.com/c495bd0b-ea4d-7206-8a4f-a7149760d19a@redhat.com 
Signed-off-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Philippe Mathieu-Daude <philmd@redhat.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-07-16 23:04:15 +02:00 
						 
				 
			
				
					
						
							
							
								Ray Ni 
							
						 
					 
					
						
						
							
						
						6e5a33d1fb 
					 
					
						
						
							
							MdePkg/BaseLib.h: Update IA32_CR4 structure for 5-level paging  
						
						... 
						
						
						
						5-level paging is documented in white paper:
https://software.intel.com/sites/default/files/managed/2b/80/5-level_paging_white_paper.pdf 
Commit f8113e2500ray.ni@intel.com >
Cc: Eric Dong <eric.dong@intel.com >
Regression-tested-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Eric Dong <eric.dong@intel.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
(cherry picked from commit 7c5010c7f8 
						
						
					 
					
						2019-07-12 15:12:43 +08:00 
						 
				 
			
				
					
						
							
							
								Ray Ni 
							
						 
					 
					
						
						
							
						
						deb90ac03a 
					 
					
						
						
							
							Revert "MdePkg/BaseLib.h: Update IA32_CR4 structure for 5-level paging"  
						
						... 
						
						
						
						This reverts commit 7c5010c7f87c5010c7f8https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Development-Process 
and Maintainers.txt in EDKII repo root directory.
The voilation is commit 7c5010c7f8ray.ni@intel.com > 
						
						
					 
					
						2019-07-12 15:11:02 +08:00 
						 
				 
			
				
					
						
							
							
								Ray Ni 
							
						 
					 
					
						
						
							
						
						7c5010c7f8 
					 
					
						
						
							
							MdePkg/BaseLib.h: Update IA32_CR4 structure for 5-level paging  
						
						... 
						
						
						
						5-level paging is documented in white paper:
https://software.intel.com/sites/default/files/managed/2b/80/5-level_paging_white_paper.pdf 
Commit f8113e2500ray.ni@intel.com >
Cc: Eric Dong <eric.dong@intel.com >
Regression-tested-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Eric Dong <eric.dong@intel.com > 
						
						
					 
					
						2019-07-10 16:00:06 +08:00 
						 
				 
			
				
					
						
							
							
								Shenglei Zhang 
							
						 
					 
					
						
						
							
						
						4e1daa60f5 
					 
					
						
						
							
							MdePkg: Removed IPF related code  
						
						... 
						
						
						
						A previous commit(3cb0a311cbhttps://bugzilla.tianocore.org/show_bug.cgi?id=1560 
v2: Withdraw the removal of Mps.h. It is written in Mps.h that
    MPS only was included to support Itanium-based platform power on.
    But we found MPS is not so relevant to Itanium architecture.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-04-28 09:50:14 +08:00 
						 
				 
			
				
					
						
							
							
								Zhichao Gao 
							
						 
					 
					
						
						
							
						
						1abe0959f0 
					 
					
						
						
							
							MdePkg/PeiServicesLib.h: Change comments of PeiServicesResetSystem2  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1460 
Refer to Uefi spec 2.8, the ResetData is valid while ResetStatus
is EFI_SUCCESS regardless of the ResetType is EfiResetPlatformSpecific
or not.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Cc: Sean Brogan <sean.brogan@microsoft.com >
Cc: Michael Turner <Michael.Turner@microsoft.com >
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com >
Signed-off-by: Zhichao Gao <zhichao.gao@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-04-28 09:40:12 +08:00 
						 
				 
			
				
					
						
							
							
								Michael D Kinney 
							
						 
					 
					
						
						
							
						
						9344f09215 
					 
					
						
						
							
							MdePkg: Replace BSD License with BSD+Patent License  
						
						... 
						
						
						
						https://bugzilla.tianocore.org/show_bug.cgi?id=1373 
Replace BSD 2-Clause License with BSD+Patent License.  This change is
based on the following emails:
  https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html 
  https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html 
RFCs with detailed process for the license change:
  V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html 
  V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html 
  V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html 
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
					
						2019-04-09 10:58:13 -07:00 
						 
				 
			
				
					
						
							
							
								Bret Barkelew 
							
						 
					 
					
						
						
							
						
						b87a9a76eb 
					 
					
						
						
							
							MdePkg/DebugLib.h: Add new APIs for DebugLib  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1395 
Add new APIs DebugVPrint and DebugBPrint prototype
definition in the DebugLib header file. These APIs
would expose a print routine with VaList parameter
and BaseList parameter.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Zhichao Gao <zhichao.gao@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Cc: Sean Brogan <sean.brogan@microsoft.com >
Cc: Michael Turner <Michael.Turner@microsoft.com >
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-04-02 12:49:27 +08:00 
						 
				 
			
				
					
						
							
							
								Yao, Jiewen 
							
						 
					 
					
						
						
							
						
						0aac2f777a 
					 
					
						
						
							
							MdePkg/BaseLib: Add Shadow Stack Support for X86.  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1521 
This patch adds SSP - shadow stack pointer to JumpBuffer.
It will be used for the platform that enabled CET/ShadowStack.
We add gEfiMdePkgTokenSpaceGuid.PcdControlFlowEnforcementPropertyMask
to control the global enable/disable.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Cc: Eric Dong <eric.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Laszlo Ersek <lersek@redhat.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Yao Jiewen <jiewen.yao@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
Regression-tested-by: Laszlo Ersek <lersek@redhat.com > 
						
						
					 
					
						2019-02-28 09:39:47 +08:00 
						 
				 
			
				
					
						
							
							
								Bi, Dandan 
							
						 
					 
					
						
						
							
						
						6c61ec4c62 
					 
					
						
						
							
							MdePkg: Fix coding style issues  
						
						... 
						
						
						
						REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1478 
Fix issues that reported by Edk2 coding style check tool(ECC) that:
in Comment, <@param SystemTable> does NOT consistent with parameter
name MmSystemTable.
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org >
Cc: Liming Gao <liming.gao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Dandan Bi <dandan.bi@intel.com >
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-02-02 21:41:47 +08:00 
						 
				 
			
				
					
						
							
							
								Mike Turner 
							
						 
					 
					
						
						
							
						
						1f7af69d10 
					 
					
						
						
							
							MdePkg/BaseLib: Add Base64Encode() and Base64Decode()  
						
						... 
						
						
						
						Introduce public functions Base64Encode and Base64Decode.
https://bugzilla.tianocore.org/show_bug.cgi?id=1370 
v2:1.Remove some white space.
   2.Add unit test with test vectors in RFC 4648.
     https://github.com/shenglei10/edk2/tree/encode_test 
     https://github.com/shenglei10/edk2/tree/decode_test 
v3:1.Align white space.
   2.Update comments of Base64Encode and Base64Decode.
   3.Change the use of macro RETURN_DEVICE_ERROR to
     RETURN_INVALID_PARAMETER in string.c.
v4:Change parameters' names.
v5:1.Update usage of variables.
   2.Remove debug message in Base64Decode().
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-02-02 21:41:11 +08:00 
						 
				 
			
				
					
						
							
							
								Bret Barkelew 
							
						 
					 
					
						
						
							
						
						37bf678761 
					 
					
						
						
							
							MdePkg/UefiLib: Add a new API GetVariable3  
						
						... 
						
						
						
						BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1396 
Add a new API GetVariable3, which can return the attributes of a variable during reading it.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jiansong Xu <jiansongx.xu@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-01-31 20:19:24 +08:00 
						 
				 
			
				
					
						
							
							
								Mike Turner 
							
						 
					 
					
						
						
							
						
						fd02394228 
					 
					
						
						
							
							MdePkg/UefiDevicePathLib: Add a checking step  
						
						... 
						
						
						
						Add a checking step in DevicePathUtilities.c to verify DevicePath.
https://bugzilla.tianocore.org/show_bug.cgi?id=1372 
v2: Remove ASSERT() and the redundant checking step. Update related
    description.
Cc: Liming Gao <liming.gao@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com >
Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com > 
						
						
					 
					
						2019-01-31 20:19:21 +08:00 
						 
				 
			
				
					
						
							
							
								Mike Turner 
							
						 
					 
					
						
						
							
						
						5dbfa01e2e 
					 
					
						
						
							
							MdePkg/BaseLib: Introduce CharToUpper and AsciiCharToUpper publicly  
						
						... 
						
						
						
						Introduce two public functions CharToUpper and AsciiCharToUpper.
They have the same functions as InternalCharToUpper and
InternalBaseLibAsciiToUpper.Considering the internal functions will
be removed,so directly I change their function names to the public ones'.
https://bugzilla.tianocore.org/show_bug.cgi?id=1369 
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <liming.gao@intel.com >
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com > 
						
						
					 
					
						2019-01-31 20:19:14 +08:00 
						 
				 
			
				
					
						
							
							
								Ard Biesheuvel 
							
						 
					 
					
						
						
							
						
						7df4764e6a 
					 
					
						
						
							
							MdePkg: introduce standalone MM entry point library class  
						
						... 
						
						
						
						Add the library interface for the standalone MM driver entry point.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org >
Acked-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-01-16 20:10:51 +01:00 
						 
				 
			
				
					
						
							
							
								Jagadeesh Ujja 
							
						 
					 
					
						
						
							
						
						b94aecb4ec 
					 
					
						
						
							
							MdePkg/Include: add MmServicesTableLib header file  
						
						... 
						
						
						
						SMM has been rebranded as MM, and can be implemented in traditional
mode or standalone mode, using the same prototype for the services
table. Expose this table via MmServicesTableLib, permitting the
respective implementations to expose a traditional or standalone
version.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jagadeesh Ujja <jagadeesh.ujja@arm.com >
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org >
Reviewed-by: Star Zeng <star.zeng@intel.com >
Reviewed-by: Liming Gao <liming.gao@intel.com > 
						
						
					 
					
						2019-01-14 09:16:39 +01:00