nixos-riscv/fpga/run-node.sh
Rodrigo Arias Mallo ad5dd72928 Switch to debug2 instead of bench2
No need to run the SPEC benchmarks all the time. Stopping at the stage2
shell is enough to test most of the system.
2024-10-11 11:05:45 +02:00

39 lines
923 B
Bash
Executable File

#!/usr/bin/bash
#set -x
set -e
echo "Hello from $(hostname)"
path="$1"
cd "$path"
# First kill any picocom instance
killall picocom || true
# Setup the environment
. env.sh
set -x
# Then perform the boot
./fpgactl -w bitstream.bit -b opensbi.bin -k kernel.bin -i initrd.bin -r rootfs.img
# Normal timeouts
timeout=$((30 * 60)) # Always stop after 30 min
timeout_silent=$((3 * 60)) # Stop if 3 min without output
# Timeouts for SPEC benchmarks
#timeout=$((12 * 60 * 60)) # Always stop after 12 h
#timeout_silent=$((4 * 60 * 60)) # Stop if 4 h without output (some benchmarks take 1.6h)
# Set dead switch
sleep $timeout && killall picocom &
# Note: --imap igncr is broken so we replace it with LF.
# See https://github.com/npat-efault/picocom/pull/114
# It looks like picocom is abandoned, we may want to switch to minicom or
# stty+cat
picocom --imap crlf -q -x $(($timeout_silent*1000)) -b 115200 $FPGACTL_UART