#!/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 ./fpgactl -w bitstream.bit -b opensbi.bin -k kernel.bin -i initrd.bin # Restart it again only loading the bootrom and OpenSBI (notice OpenSBI # relocates itself so it will likely be gone by now) sleep 1 && ./fpgactl -b opensbi.bin & timeout=$((30 * 60)) # Always stop after 30 min timeout_silent=$((10 * 60)) # Stop if 10 min without output # 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