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
This commit is contained in:
eric_tian 2009-07-13 12:08:24 +00:00
parent d18476d0dc
commit eb0f522c15
1 changed files with 18 additions and 9 deletions

View File

@ -234,7 +234,8 @@ Returns:
VOID VOID
PlatformBdsDiagnostics ( PlatformBdsDiagnostics (
IN EXTENDMEM_COVERAGE_LEVEL MemoryTestLevel, IN EXTENDMEM_COVERAGE_LEVEL MemoryTestLevel,
IN BOOLEAN QuietBoot IN BOOLEAN QuietBoot,
IN BASEM_MEMORY_TEST BaseMemoryTest
) )
/*++ /*++
@ -249,6 +250,8 @@ Arguments:
QuietBoot - Indicate if need to enable the quiet boot QuietBoot - Indicate if need to enable the quiet boot
BaseMemoryTest - A pointer to BdsMemoryTest()
Returns: Returns:
None. None.
@ -268,7 +271,7 @@ Returns:
// //
// Perform system diagnostic // Perform system diagnostic
// //
Status = BdsMemoryTest (MemoryTestLevel); Status = BaseMemoryTest (MemoryTestLevel);
if (EFI_ERROR (Status)) { if (EFI_ERROR (Status)) {
DisableQuietBoot (); DisableQuietBoot ();
} }
@ -278,14 +281,16 @@ Returns:
// //
// Perform system diagnostic // Perform system diagnostic
// //
Status = BdsMemoryTest (MemoryTestLevel); Status = BaseMemoryTest (MemoryTestLevel);
} }
VOID VOID
EFIAPI EFIAPI
PlatformBdsPolicyBehavior ( PlatformBdsPolicyBehavior (
IN OUT LIST_ENTRY *DriverOptionList, IN OUT LIST_ENTRY *DriverOptionList,
IN OUT LIST_ENTRY *BootOptionList IN OUT LIST_ENTRY *BootOptionList,
IN PROCESS_CAPSULES ProcessCapsules,
IN BASEM_MEMORY_TEST BaseMemoryTest
) )
/*++ /*++
@ -301,6 +306,10 @@ Arguments:
BootOptionList - The header of the boot option link list BootOptionList - The header of the boot option link list
ProcessCapsules - A pointer to ProcessCapsules()
BaseMemoryTest - A pointer to BaseMemoryTest()
Returns: Returns:
None. None.
@ -339,7 +348,7 @@ Returns:
// console directly. // console directly.
// //
BdsLibConnectAllDefaultConsoles (); BdsLibConnectAllDefaultConsoles ();
PlatformBdsDiagnostics (IGNORE, TRUE); PlatformBdsDiagnostics (IGNORE, TRUE, BaseMemoryTest);
// //
// Perform some platform specific connect sequence // Perform some platform specific connect sequence
@ -363,7 +372,7 @@ Returns:
// Boot with the specific configuration // Boot with the specific configuration
// //
PlatformBdsConnectConsole (gPlatformConsole); PlatformBdsConnectConsole (gPlatformConsole);
PlatformBdsDiagnostics (EXTENSIVE, FALSE); PlatformBdsDiagnostics (EXTENSIVE, FALSE, BaseMemoryTest);
BdsLibConnectAll (); BdsLibConnectAll ();
ProcessCapsules (BOOT_ON_FLASH_UPDATE); ProcessCapsules (BOOT_ON_FLASH_UPDATE);
break; break;
@ -374,7 +383,7 @@ Returns:
// and show up the front page // and show up the front page
// //
PlatformBdsConnectConsole (gPlatformConsole); PlatformBdsConnectConsole (gPlatformConsole);
PlatformBdsDiagnostics (EXTENSIVE, FALSE); PlatformBdsDiagnostics (EXTENSIVE, FALSE, BaseMemoryTest);
// //
// In recovery boot mode, we still enter to the // In recovery boot mode, we still enter to the
@ -398,7 +407,7 @@ Returns:
PlatformBdsNoConsoleAction (); PlatformBdsNoConsoleAction ();
} }
PlatformBdsDiagnostics (IGNORE, TRUE); PlatformBdsDiagnostics (IGNORE, TRUE, BaseMemoryTest);
// //
// Perform some platform specific connect sequence // Perform some platform specific connect sequence