feat(adapter): init+storage packed into kernel image; drop adapter FAT16 reader + virtio-blk

This commit is contained in:
2026-10-27 16:58:11 +01:00
parent b80303f553
commit 4030dd4315
10 changed files with 43 additions and 265 deletions

View File

@@ -3,7 +3,6 @@
mod board;
mod boot;
mod boot_fs;
mod devices;
mod entry;
mod hw;
@@ -36,12 +35,9 @@ extern "C" fn kmain(hart: usize) -> ! {
boot::hardware::init(&uart, hart);
// Not before init: zeroing .bss resets the lock.
smp::lock();
let mut blk =
boot::hardware::probe_block_device(&uart).unwrap_or_else(|| halt(&uart, "no block device"));
let init = boot::loader::load_init(&uart, &mut blk);
// Init needs storage to load anything else; the rest is init's to start.
let storage = boot::loader::load_server(&uart, &mut blk, init.pid, b"storage.elf", "storage");
// Both come from the kernel image; init starts everything else from disk.
let init = boot::loader::load_init(&uart);
let storage = boot::loader::load_storage(&uart, init.pid);
let board = board::devices().unwrap_or_else(|| halt(&uart, "bad board table"));
kern_mut()