What to do on the day a board is on the bench: media, cabling, what to watch for, what counts as a pass, what to keep. Written before any board has been booted. Section 1 lists what was found in the code while writing it, none of it fixed: the USB controller driver matches QEMU's controller only; the production build shows no prompt without a thumbdrive login; there is no USB keyboard driver and no disk driver but virtio; on the Pi 5 the console writes every character to QEMU's UART address, which is RAM there; on the Mars the console's UART register layout is probably not the board's; the board images cannot build the v4 node. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
boards/
One directory per physical target. make boot_image TARGET=<NAME> (repo root) maps the
name to a directory here, reads its board.mk, and builds the single file that goes on
that board's boot medium into build/boards/<board>/.
| TARGET | Directory | ISA | Boot path | Image |
|---|---|---|---|---|
SER5 |
ser5/ |
amd64 | UEFI firmware, removable-media path | GPT + FAT32 ESP: EFI/BOOT/BOOTX64.EFI |
RASPI |
raspi/ |
aarch64 | Pi 5 EEPROM firmware, native | MBR + FAT32: config.txt, kernel_2712.img, bcm2712-rpi-5-b.dtb |
MILKV |
milkv/ |
riscv64 | SPI-flash U-Boot + OpenSBI, bootefi |
GPT + FAT32 ESP: EFI/BOOT/BOOTRISCV64.EFI |
ZYNQ7020 |
zynq7020/ |
armv7 | BootROM, BOOT.BIN, U-Boot |
not yet: needs kernel/src/arch/armv7 |
board.mk sets:
BOARD_DESC: one-line description (make boards)BOARD_ARCH: kernel ISA (kernel/src/arch/<arch>)BOARD_BOOT: image recipe inkernel/Makefile(uefi-esp,rpi-native, ...)BOARD_IMAGE: output file name
Disk images are assembled by scripts/mkdiskimage.sh, which needs no root access and no loop
devices. KERNEL_ARGS="..." is written as starforth.cfg (UEFI boards) or cmdline.txt
(Pi 5, where the firmware copies it into /chosen/bootargs). BOOT_IMAGE_SIZE_MIB sets the
image size; the default is 128.
Hardware status: none of these images has been booted on real silicon from this build. The
SER5 image has been booted in QEMU (q35 + OVMF, from its own disk) through POST. The Pi 5
native path (raspi/README.md) and the JH7110 peripherals have still only been checked by
compiling.