Better virtual file system, keyboard through MMIO&VirtIO

This commit is contained in:
2026-03-05 14:41:28 +01:00
parent 041e544330
commit 9b6aec28f5
37 changed files with 1191 additions and 355 deletions

View File

@@ -17,7 +17,7 @@ build_user_prog prog:
cp {{ bin_path / prog }} {{ "mnt/usr/bin" / prog }}
# riscv64-elf-objcopy -O binary {{ bin_path / prog }} {{ "mnt/usr/bin" / prog }}
build: mount_filesystem (map_dir "user" f"just cargo_flags=\"{{cargo_flags}}\" build_user_prog")
build: mount_filesystem (map_dir "user" f"just release=\"{{release}}\" cargo_flags=\"{{cargo_flags}}\" build_user_prog")
cargo b {{ cargo_flags }}
just sync_filesystem
@@ -29,7 +29,17 @@ map_dir dir recipe:
{{ recipe }} $file ; \
done
qemu := "qemu-system-riscv64 -machine virt -device bochs-display -bios none -m 512M -device loader,file=disk.img,addr=0x90000000"
qemu := "qemu-system-riscv64 \
-machine virt \
-device bochs-display \
-global virtio-mmio.force-legacy=false \
-device virtio-keyboard-device,bus=virtio-mmio-bus.0 \
-device loader,file=disk.img,addr=0x90000000 \
-bios none -m 512M"
# \
# -d guest_errors,unimp \
# -trace \"virtio*\""
perf: build
{{ qemu }} -perfmap -kernel {{ bin_path / "kernel-rust" }}&