summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzwei4 <david.wei@intel.com>2018-04-03 10:57:15 +0800
committerzwei4 <david.wei@intel.com>2018-04-03 11:09:45 +0800
commita3613c5250b516d56a517a948f5d7936487ec36f (patch)
treed55feb11ff1a6df7a84d2d6cdef43168bc30ce73
parent8827ffd17b0b1d28940e5f0e818d2b1b308f620f (diff)
downloadedk2-platforms-a3613c5250b516d56a517a948f5d7936487ec36f.tar.xz
Add Memory test code.
Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: zwei4 <david.wei@intel.com>
-rw-r--r--Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManager.c23
-rw-r--r--Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf1
2 files changed, 23 insertions, 1 deletions
diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManager.c b/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManager.c
index 7c7a98e2b9..6715d9073b 100644
--- a/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManager.c
+++ b/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManager.c
@@ -23,6 +23,7 @@
#include <Protocol/ExitPmAuth.h>
#include <Protocol/UsbIo.h>
#include <Protocol/VariableLock.h>
+#include <Protocol/GenericMemoryTest.h>
#include <Library/IoLib.h>
#include <Library/PciLib.h>
#include <Library/TcgPhysicalPresenceLib.h>
@@ -1000,11 +1001,31 @@ PlatformBootManagerAfterConsole (
VOID
)
{
- EFI_BOOT_MODE LocalBootMode;
+ EFI_STATUS Status;
+ EFI_BOOT_MODE LocalBootMode;
+ BOOLEAN RequireSoftECCInit;
+ EFI_GENERIC_MEMORY_TEST_PROTOCOL *GenMemoryTest;
DEBUG ((EFI_D_INFO, "PlatformBootManagerAfterConsole\n"));
//
+ // Run memory test code at this point.
+ //
+ Status = gBS->LocateProtocol (
+ &gEfiGenericMemTestProtocolGuid,
+ NULL,
+ (VOID **) &GenMemoryTest
+ );
+
+ if (!EFI_ERROR (Status)) {
+ Status = GenMemoryTest->MemoryTestInit (
+ GenMemoryTest,
+ IGNORE,
+ &RequireSoftECCInit
+ );
+ }
+
+ //
// Get current Boot Mode.
//
LocalBootMode = mBootMode;
diff --git a/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf b/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
index 8e429fbf9f..9f476a14d0 100644
--- a/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
+++ b/Platform/BroxtonPlatformPkg/Common/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
@@ -92,6 +92,7 @@
gEfiFormBrowser2ProtocolGuid
gExitPmAuthProtocolGuid
gEfiGraphicsOutputProtocolGuid
+ gEfiGenericMemTestProtocolGuid
[Guids]
gEfiGlobalVariableGuid