diff --git a/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c b/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c index a797682751..8150f9a477 100644 --- a/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c +++ b/IntelFrameworkModulePkg/Library/GenericBdsLib/BdsBoot.c @@ -3277,6 +3277,13 @@ BdsLibEnumerateAllBootOption ( DevicePath = DevicePathFromHandle (BlockIoHandles[Index]); DevicePathType = BdsGetBootTypeFromDevicePath (DevicePath); + // + // Skip devices that do not have an EFI volume + // + if (BdsLibGetBootableHandle (DevicePath) == NULL) { + continue; + } + // Do NVMe devices first, all others second if (DPTIndex == 0) { if (DevicePathType != BDS_EFI_MESSAGE_NVME_BOOT) {