summaryrefslogtreecommitdiff
path: root/Nt32Pkg/Library
diff options
context:
space:
mode:
authoreric_tian <eric_tian@6f19259b-4bc3-4df7-8a09-765794883524>2009-07-13 12:06:51 +0000
committereric_tian <eric_tian@6f19259b-4bc3-4df7-8a09-765794883524>2009-07-13 12:06:51 +0000
commitf51c8a9de38c994bfcc5ef0ccdd689438877953c (patch)
tree41f09d6f9ec2ca85026822323738659e01ed80f8 /Nt32Pkg/Library
parenta798a789068ae448f6236f68f5bc28b0fe523385 (diff)
downloadedk2-platforms-f51c8a9de38c994bfcc5ef0ccdd689438877953c.tar.xz
ProcessCapsule() and BdsMemoryTest() are implemented in the BdsDxe module, which will be invoked at PlatformBds library.
It is not proper for a library implementation to assume the names of function in a parent module. Instead, they must be designed as the pointers to these two BdsDxe functions and passed in. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8930 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'Nt32Pkg/Library')
-rw-r--r--Nt32Pkg/Library/Nt32BdsLib/BdsPlatform.c53
1 files changed, 25 insertions, 28 deletions
diff --git a/Nt32Pkg/Library/Nt32BdsLib/BdsPlatform.c b/Nt32Pkg/Library/Nt32BdsLib/BdsPlatform.c
index f793bf4cbb..edfcbcfd58 100644
--- a/Nt32Pkg/Library/Nt32BdsLib/BdsPlatform.c
+++ b/Nt32Pkg/Library/Nt32BdsLib/BdsPlatform.c
@@ -235,7 +235,8 @@ Returns:
VOID
PlatformBdsDiagnostics (
IN EXTENDMEM_COVERAGE_LEVEL MemoryTestLevel,
- IN BOOLEAN QuietBoot
+ IN BOOLEAN QuietBoot,
+ IN BASEM_MEMORY_TEST BaseMemoryTest
)
/*++
@@ -249,7 +250,9 @@ Arguments:
MemoryTestLevel - The memory test intensive level
QuietBoot - Indicate if need to enable the quiet boot
-
+
+ BaseMemoryTest - A pointer to BdsMemoryTest()
+
Returns:
None.
@@ -269,7 +272,7 @@ Returns:
//
// Perform system diagnostic
//
- Status = BdsMemoryTest (MemoryTestLevel);
+ Status = BaseMemoryTest (MemoryTestLevel);
if (EFI_ERROR (Status)) {
DisableQuietBoot ();
}
@@ -279,34 +282,28 @@ Returns:
//
// Perform system diagnostic
//
- Status = BdsMemoryTest (MemoryTestLevel);
+ Status = BaseMemoryTest (MemoryTestLevel);
}
-VOID
-EFIAPI
-PlatformBdsPolicyBehavior (
- IN OUT LIST_ENTRY *DriverOptionList,
- IN OUT LIST_ENTRY *BootOptionList
- )
-/*++
-
-Routine Description:
-
+/**
The function will excute with as the platform policy, current policy
is driven by boot mode. IBV/OEM can customize this code for their specific
policy action.
-
-Arguments:
- DriverOptionList - The header of the driver option link list
-
- BootOptionList - The header of the boot option link list
-
-Returns:
+ @param DriverOptionList The header of the driver option link list
+ @param BootOptionList The header of the boot option link list
+ @param ProcessCapsules A pointer to ProcessCapsules()
+ @param BaseMemoryTest A pointer to BaseMemoryTest()
- None.
-
---*/
+**/
+VOID
+EFIAPI
+PlatformBdsPolicyBehavior (
+ IN OUT LIST_ENTRY *DriverOptionList,
+ IN OUT LIST_ENTRY *BootOptionList,
+ IN PROCESS_CAPSULES ProcessCapsules,
+ IN BASEM_MEMORY_TEST BaseMemoryTest
+ )
{
EFI_STATUS Status;
UINT16 Timeout;
@@ -340,7 +337,7 @@ Returns:
// console directly.
//
BdsLibConnectAllDefaultConsoles ();
- PlatformBdsDiagnostics ((EXTENDMEM_COVERAGE_LEVEL)IGNORE, TRUE);
+ PlatformBdsDiagnostics ((EXTENDMEM_COVERAGE_LEVEL)IGNORE, TRUE, BaseMemoryTest);
//
// Perform some platform specific connect sequence
@@ -364,7 +361,7 @@ Returns:
// Boot with the specific configuration
//
PlatformBdsConnectConsole (gPlatformConsole);
- PlatformBdsDiagnostics (EXTENSIVE, FALSE);
+ PlatformBdsDiagnostics (EXTENSIVE, FALSE, BaseMemoryTest);
BdsLibConnectAll ();
ProcessCapsules (BOOT_ON_FLASH_UPDATE);
break;
@@ -375,7 +372,7 @@ Returns:
// and show up the front page
//
PlatformBdsConnectConsole (gPlatformConsole);
- PlatformBdsDiagnostics (EXTENSIVE, FALSE);
+ PlatformBdsDiagnostics (EXTENSIVE, FALSE, BaseMemoryTest);
//
// In recovery boot mode, we still enter to the
@@ -399,7 +396,7 @@ Returns:
PlatformBdsNoConsoleAction ();
}
- PlatformBdsDiagnostics ((EXTENDMEM_COVERAGE_LEVEL)IGNORE, TRUE);
+ PlatformBdsDiagnostics ((EXTENDMEM_COVERAGE_LEVEL)IGNORE, TRUE, BaseMemoryTest);
//
// Perform some platform specific connect sequence