forked from rarias/nixos-riscv
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 };
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.
Description
Languages
Nix
41.5%
Shell
21.3%
C
15.5%
Perl
9.9%
Makefile
8.2%
Other
3.6%