Build: Add USB boot + NVMe HAT support
Lint & Validate / lint (push) Has been cancelled

- --target flag in build.sh (sd|usb|nvme)
- NVMe kernel driver enabled for --target nvme
- EEPROM boot-order config in first-boot wizard
- USB/NVMe flashing docs in build/README.md
- Hardware compatibility + user manual docs from P7
This commit is contained in:
2026-05-19 22:54:41 -04:00
parent 5e208d5123
commit 9e007ae197
5 changed files with 1126 additions and 9 deletions
+30
View File
@@ -307,6 +307,36 @@ fi
press_enter
# ─── 7. Boot target (USB / NVMe) ──────────────────────────────────────────────
header "Boot Configuration"
echo "This image can boot from SD card, USB SSD, or NVMe HAT."
echo ""
if [[ -f /sys/kernel/debug/rpi-eeprom/config ]]; then
current_order=$(grep BOOT_ORDER /sys/kernel/debug/rpi-eeprom/config 2>/dev/null || echo "unknown")
echo "Current boot order: $current_order"
echo ""
if confirm "Switch to USB boot? (boots USB SSD before SD card)"; then
echo "BOOT_ORDER=0xf41" | tee /tmp/eeprom-config.txt
sudo rpi-eeprom-config --out /tmp/eeprom-config.bin --config /tmp/eeprom-config.txt
echo "USB boot configured. Next boot will try USB first."
fi
if confirm "Switch to NVMe boot? (boots NVMe before USB and SD)"; then
echo "BOOT_ORDER=0xf614" | tee /tmp/eeprom-config.txt
sudo rpi-eeprom-config --out /tmp/eeprom-config.bin --config /tmp/eeprom-config.txt
echo "NVMe boot configured. Next boot will try NVMe first."
fi
else
echo "EEPROM config not accessible. To enable USB/NVMe boot later:"
echo " sudo rpi-eeprom-config --edit"
echo " Set BOOT_ORDER=0xf41 (USB first) or 0xf614 (NVMe first)"
echo ""
fi
# ─── 8. Finalize ─────────────────────────────────────────────────────────────
header "Setup Complete"