Boot Failure Playbook
A firmware engineer playbook for debugging missing boot options, invalid BootOrder, broken Device Paths, and BDS boot failures.
The machine says “No bootable device”.
That message is not a root cause. It is the last visible symptom of a chain that started earlier.
Is the disk or USB visible?
Use Shell map -r and filesystem listing to verify ESP or removable media.
Does the EFI file exist?
Check EFIBOOTBOOTX64.EFI, Windows Boot Manager path, or custom loader path.
Do Boot#### variables exist?
Use dmpstore and bcfg boot dump to inspect BootOrder, BootNext, and EFI_LOAD_OPTION.
Does the boot option point to the right target?
Inspect HD(), File(), Pci(), USB(), NVMe(), or SATA device path nodes.
Did Boot Device Selection consume it?
Check BDS policy, timeout, boot mode, setup override, and one-time boot state.
Was the image blocked?
Check Secure Boot state, db/dbx, signature, and EFI_SECURITY_VIOLATION logs.
Shell command path
Shell> map -r
Shell> fs0:
FS0:\> ls EFI\BOOT
Shell> dmpstore BootOrder
Shell> dmpstore BootNext
Shell> bcfg boot dump
Symptom map
| Item | Value | Note |
|---|---|---|
| No fsX mapping | Media/filesystem not visible | Check storage driver, USB driver, partition type, FAT32, and device connection. |
| EFI file missing | Media layout problem | Check ESP path, fallback path, Windows Boot Manager path. |
| BootOrder missing | NVRAM issue | Check variable store, clear CMOS behavior, BIOS update migration, and NVRAM full. |
| Boot#### invalid | Bad EFI_LOAD_OPTION | Check device path and optional data. |
| Security violation | Secure Boot block | Check signature, db/dbx, SetupMode, and image trust. |
Debug Diary: Windows Boot Manager missing after BIOS update
map -r: ESP exists
bootmgfw.efi exists
BootOrder: does not reference Windows Boot Manager
bcfg boot add: creates new option
reboot: option disappears again
Root cause direction: variable store write failure or BIOS policy recreating boot list incorrectly
The important part is not only recovering boot. It is finding whether the failure is media, variable, BDS policy, or security.
Related notes
Found this useful?
Save it or share it with someone learning firmware, BIOS/UEFI, and embedded systems.
Nội dung liên quan
Một số bài viết, ghi chú hoặc project có liên quan đến nội dung bạn vừa đọc.
bcfg Deep Dive
How to use UEFI Shell bcfg to inspect, add, remove, and debug UEFI boot options from the firmware side.
dmpstore Deep Dive
How to use UEFI Shell dmpstore to inspect boot variables, Secure Boot variables, setup variables, and NVRAM state during firmware debug.
What is Boot####, BootOrder, and BootNext?
Quick note explaining Boot####, BootOrder, and BootNext for BIOS/UEFI and embedded firmware readers.
Biến note thành bài viết hoàn chỉnh
Notes là nơi ghi nhanh khái niệm.