Rodrigo Arias Mallo
65c7eca2c8
OpenSBI 1.3 an newer require the heap_size to be specified in the sbi_platform structure, othewise the default 0 value causes a hangg at the start. I found the problem after bisecting OpenSBI: # Bisect opensbi version = src.shortRev; src = builtins.fetchGit { url = "file:///home/Computational/rarias/riscv/opensbi"; #rev = "908be1b85c8ff0695ea226fbbf0ff24a779cdece"; #good #rev = "6bc02dede86c47f87e65293b7099e9caf3b22c29"; #good #rev = "bbff53fe3b6cdd3c9bc084d489640d7ee2a3f831"; #bad #rev = "8b99a7f7d8294be29e18a667d51e13755ed2c0e0"; #good #rev = "bdde2ecd27af1ac158669809f6658376fb5137ab"; #good #rev = "5cf9a540164a018a31a679578a27eb964af0340d"; #good #rev = "2a04f7037317c6c5b591b160a074c700de9b3378"; #bad rev = "40d36a6673131e36075b1df78af4d7ab92e8cc01"; #bad }; |
||
---|---|---|
fpga | ||
.gitignore | ||
alveo-uart-sbi-hack.patch | ||
boot.sh | ||
configuration.nix | ||
flake.lock | ||
flake.nix | ||
lagarto-hun.nix | ||
lagarto-ox.nix | ||
no-compressed.nix | ||
NOTES.md | ||
opensbi-lagarto-hun.patch | ||
overlay.nix | ||
ox-alveo-platform-plic.patch | ||
ox-alveo-platform.patch | ||
ox-plic.dts | ||
ox.dts | ||
README.md | ||
u-boot-debug.patch | ||
unalign.c | ||
vm.nix | ||
xavi.dts |
NixOS on RISC-V
This repository contains NixOS configurations for different RISC-V machines.
QEMU
To boot the system in QEMU, first enter the development shell:
$ nix develop
Then run the boot script:
$ ./boot.sh
To prevent the GC from erasing the system:
$ nix build .#devShells.x86_64-linux.default --out-link result-env
Lagarto Hun on FPGA Alveo U55C
First build required dependencies:
$ nix develop '.#lagarto-hun'
Then upload to destination:
$ fpga/upload.sh
And then boot the system there:
cucu$ ./boot.sh
...
In the U-Boot prompt, paste the commands of the uboot.env
file.