summaryrefslogtreecommitdiffstats
path: root/UnixPkg
diff options
context:
space:
mode:
authoreric_tian <eric_tian@6f19259b-4bc3-4df7-8a09-765794883524>2009-07-13 12:08:24 +0000
committereric_tian <eric_tian@6f19259b-4bc3-4df7-8a09-765794883524>2009-07-13 12:08:24 +0000
commiteb0f522c152a7064ca7c6d4f448a12a4c2fb9aae (patch)
treecb34e2686b8e3b480d02e708cbd92eb2bc006158 /UnixPkg
parentd18476d0dc16ea9776dfcb8d12b583ebfbc4df87 (diff)
downloadedk2-eb0f522c152a7064ca7c6d4f448a12a4c2fb9aae.tar.gz
edk2-eb0f522c152a7064ca7c6d4f448a12a4c2fb9aae.tar.bz2
edk2-eb0f522c152a7064ca7c6d4f448a12a4c2fb9aae.zip
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@8932 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'UnixPkg')
-rw-r--r--UnixPkg/Library/UnixBdsLib/BdsPlatform.c27
1 files changed, 18 insertions, 9 deletions
diff --git a/UnixPkg/Library/UnixBdsLib/BdsPlatform.c b/UnixPkg/Library/UnixBdsLib/BdsPlatform.c
index fb541b2273..ad080863c4 100644
--- a/UnixPkg/Library/UnixBdsLib/BdsPlatform.c
+++ b/UnixPkg/Library/UnixBdsLib/BdsPlatform.c
@@ -234,7 +234,8 @@ Returns:
VOID
PlatformBdsDiagnostics (
IN EXTENDMEM_COVERAGE_LEVEL MemoryTestLevel,
- IN BOOLEAN QuietBoot
+ IN BOOLEAN QuietBoot,
+ IN BASEM_MEMORY_TEST BaseMemoryTest
)
/*++
@@ -248,6 +249,8 @@ Arguments:
MemoryTestLevel - The memory test intensive level
QuietBoot - Indicate if need to enable the quiet boot
+
+ BaseMemoryTest - A pointer to BdsMemoryTest()
Returns:
@@ -268,7 +271,7 @@ Returns:
//
// Perform system diagnostic
//
- Status = BdsMemoryTest (MemoryTestLevel);
+ Status = BaseMemoryTest (MemoryTestLevel);
if (EFI_ERROR (Status)) {
DisableQuietBoot ();
}
@@ -278,14 +281,16 @@ Returns:
//
// Perform system diagnostic
//
- Status = BdsMemoryTest (MemoryTestLevel);
+ Status = BaseMemoryTest (MemoryTestLevel);
}
VOID
EFIAPI
PlatformBdsPolicyBehavior (
IN OUT LIST_ENTRY *DriverOptionList,
- IN OUT LIST_ENTRY *BootOptionList
+ IN OUT LIST_ENTRY *BootOptionList,
+ IN PROCESS_CAPSULES ProcessCapsules,
+ IN BASEM_MEMORY_TEST BaseMemoryTest
)
/*++
@@ -300,7 +305,11 @@ Arguments:
DriverOptionList - The header of the driver option link list
BootOptionList - The header of the boot option link list
-
+
+ ProcessCapsules - A pointer to ProcessCapsules()
+
+ BaseMemoryTest - A pointer to BaseMemoryTest()
+
Returns:
None.
@@ -339,7 +348,7 @@ Returns:
// console directly.
//
BdsLibConnectAllDefaultConsoles ();
- PlatformBdsDiagnostics (IGNORE, TRUE);
+ PlatformBdsDiagnostics (IGNORE, TRUE, BaseMemoryTest);
//
// Perform some platform specific connect sequence
@@ -363,7 +372,7 @@ Returns:
// Boot with the specific configuration
//
PlatformBdsConnectConsole (gPlatformConsole);
- PlatformBdsDiagnostics (EXTENSIVE, FALSE);
+ PlatformBdsDiagnostics (EXTENSIVE, FALSE, BaseMemoryTest);
BdsLibConnectAll ();
ProcessCapsules (BOOT_ON_FLASH_UPDATE);
break;
@@ -374,7 +383,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
@@ -398,7 +407,7 @@ Returns:
PlatformBdsNoConsoleAction ();
}
- PlatformBdsDiagnostics (IGNORE, TRUE);
+ PlatformBdsDiagnostics (IGNORE, TRUE, BaseMemoryTest);
//
// Perform some platform specific connect sequence