diff options
| author | Kimplul <kimi.h.kuparinen@gmail.com> | 2023-06-04 17:43:32 +0300 |
|---|---|---|
| committer | Kimplul <kimi.h.kuparinen@gmail.com> | 2023-06-04 17:43:32 +0300 |
| commit | c7df9ae5f60ef1d36a20dbfbb8b4b0f4cd1a601a (patch) | |
| tree | c7d4d044c5657cb57649d828d6a52b847b33ea83 /README.md | |
| parent | 3dbd8c34176312b0bd3aba2309d284ac83181411 (diff) | |
| download | kmi-c7df9ae5f60ef1d36a20dbfbb8b4b0f4cd1a601a.tar.gz kmi-c7df9ae5f60ef1d36a20dbfbb8b4b0f4cd1a601a.zip | |
add some docs about visionfive2
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 19 |
1 files changed, 5 insertions, 14 deletions
@@ -1,9 +1,10 @@ -# `kmi` +# kmi -`kmi` is a ***K***ernel with ***MI***grating threads I've been writing as a hobby project. +`kmi` is a ***K*** ernel with ***MI*** grating threads I've been writing as a hobby project. To see it in action, have a look at [kmi-example](https://github.com/Kimplul/kmi-example). -Currently the kernel only works in `qemu` with RISC-V 64 bit. There is some code for +Currently the kernel has been run on `qemu` with the `virt` board and on a +StarFive VisionFive2 with RISC-V 64 bit. There is some code for RISC-V 32 bit support, but at the moment I'm focusing on 64 bit and 32 is less tested. # Building @@ -40,17 +41,7 @@ runtime when undefined behavior is detected. Only available with `RELEASE=0`. booting the kernel through u-boot's `go` command. This would in theory allow using essentially any precompiled u-boot as a bootloader, but requires some extra effort by the user to manage loading different parts to where they should -go. I should probably come up with a full example, but approximately: - -1. Load `kmi.bin` to address `A` -2. Load `initrd` to address `B` -3. Load FDT to address `C` (either provided by u-boot or a separate file) -4. Add `initrd` to FDT's `chosen` node -5. Boot with `go ${A} ${C}`. - -Note that u-boot likes to skip the `0x` prefix for -hexadecimal values, which can confuse my string converter. -Check that the strings you pass to `go` have their correct prefixes. +go. See `docs/visionfive2.md` for an example. + `run`: Load a test program into `qemu` and run it. Requires some outside support at the moment, please see [kmi-example](https://github.com/Kimplul/kmi-example). |
