tranquil-virt.img
Virtual-machine image for validating the boot flow, SMP, ramfb graphics, VirtIO devices and userspace services on a desktop host. Produced by ./run_qemu_virt.sh.
Prebuilt images are being prepared. For now, build from source.
Virtual-machine image for validating the boot flow, SMP, ramfb graphics, VirtIO devices and userspace services on a desktop host. Produced by ./run_qemu_virt.sh.
Board image with the partitions and system content needed to boot a CM4 — for real-hardware boot, HDMI output and peripheral-path validation. Produced by ./run_board_cm4.sh.
Integrity: SHA-256 checksums will be published with the images.
Full device parameters, display backend and debug options are maintained in run_qemu_virt.sh — prefer it.
Drop the downloaded tranquil-virt.img into the kernel repo's out/ directory; the script will reuse it.
If writing QEMU arguments yourself, match CPU, GIC, ramfb, VirtIO block/net/input/sound and serial settings to the QemuVirt platform config.
Writing to the wrong disk will overwrite other media — confirm the device at every step.
After inserting the SD card or exposing CM4 eMMC in mass-storage mode:
diskutil list
diskutil unmountDisk /dev/diskN
sudo dd if=tranquil-cm4.img \
of=/dev/rdiskN bs=4m \
status=progress conv=sync
sync && diskutil eject /dev/diskN
Write to the whole-disk device, never a partition node (e.g. sdX1):
lsblk
sudo umount /dev/sdX*
sudo dd if=tranquil-cm4.img \
of=/dev/sdX bs=4M \
status=progress conv=fsync
sync
Set the USB boot jumper on the CM4 IO board, connect the host to the USB slave port:
rpiboot
# once the eMMC appears as a
# block device, follow the
# macOS / Linux steps above,
# then power off, remove the
# jumper and boot