mirror of https://github.com/acidanthera/audk.git
DUET BDS clean up.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9988 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
e74f510b46
commit
73bea262b1
|
@ -1174,11 +1174,8 @@ Returns:
|
|||
EFI_STATUS Status;
|
||||
UINT16 Timeout;
|
||||
EFI_EVENT UserInputDurationTime;
|
||||
LIST_ENTRY *Link;
|
||||
BDS_COMMON_OPTION *BootOption;
|
||||
UINTN Index;
|
||||
EFI_INPUT_KEY Key;
|
||||
EFI_TPL OldTpl;
|
||||
EFI_BOOT_MODE BootMode;
|
||||
|
||||
//
|
||||
|
@ -1271,36 +1268,11 @@ Returns:
|
|||
//
|
||||
// To give the User a chance to enter Setup here, if user set TimeOut is 0.
|
||||
// BDS should still give user a chance to enter Setup
|
||||
//
|
||||
// Connect first boot option, and then check user input before exit
|
||||
//
|
||||
for (Link = BootOptionList->ForwardLink; Link != BootOptionList;Link = Link->ForwardLink) {
|
||||
BootOption = CR (Link, BDS_COMMON_OPTION, Link, BDS_LOAD_OPTION_SIGNATURE);
|
||||
if (!IS_LOAD_OPTION_TYPE (BootOption->Attribute, LOAD_OPTION_ACTIVE)) {
|
||||
//
|
||||
// skip the header of the link list, becuase it has no boot option
|
||||
//
|
||||
continue;
|
||||
} else {
|
||||
//
|
||||
// Make sure the boot option device path connected, but ignore the BBS device path
|
||||
//
|
||||
if (DevicePathType (BootOption->DevicePath) != BBS_DEVICE_PATH) {
|
||||
BdsLibConnectDevicePath (BootOption->DevicePath);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Check whether the user input after the duration time has expired
|
||||
//
|
||||
OldTpl = EfiGetCurrentTpl();
|
||||
gBS->RestoreTPL (TPL_APPLICATION);
|
||||
gBS->WaitForEvent (1, &UserInputDurationTime, &Index);
|
||||
gBS->CloseEvent (UserInputDurationTime);
|
||||
Status = gST->ConIn->ReadKeyStroke (gST->ConIn, &Key);
|
||||
gBS->RaiseTPL (OldTpl);
|
||||
|
||||
if (!EFI_ERROR (Status)) {
|
||||
//
|
||||
|
|
Loading…
Reference in New Issue