Rodrigo Arias Mallo
806023778b
Unless the UART is properly initialized, the console won't display any message until a next stage intializes it (OpenSBI) and then we will start to see messages after uploading the next bootroms. Follows the OpenSBI initialization for the UART setting the baud rate to 115200 and assuming a clock of 50 MHz. |
||
---|---|---|
bootrom | ||
fpga | ||
.gitignore | ||
alveo-uart-sbi-hack.patch | ||
boot.sh | ||
busybox-debug.patch | ||
configuration.nix | ||
csrtool.c | ||
flake.lock | ||
flake.nix | ||
JOURNAL.md | ||
lagarto-hun.nix | ||
lagarto-ox.nix | ||
memtool.c | ||
no-compressed.nix | ||
NOTES.md | ||
opensbi-dont-delegate.patch | ||
opensbi-dump-mregs.patch | ||
opensbi-enable-meip.patch | ||
opensbi-enable-seip.patch | ||
opensbi-lagarto-hun.patch | ||
opensbi-test-plic.patch | ||
opensbi-timer-debug.patch | ||
overlay.nix | ||
ox-alveo-platform-plic.patch | ||
ox-alveo-platform.patch | ||
ox-plic.dts | ||
ox.dts | ||
README.md | ||
sa-fpga-crt.patch | ||
sa-fpga-text-address.patch | ||
sa-fpga-uart.patch | ||
stage2.log | ||
u-boot-debug.patch | ||
uboot-debug-ext-interrupts.patch | ||
uboot-exception-extras.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.