Files
tatu/sim/scripts/run_opensbi.sh
2026-06-29 07:00:55 +00:00

29 lines
693 B
Bash
Executable File

#!/bin/bash
set -u
TESTBENCH="../verilator/obj_dir/VCore"
OPENSBI_BIN="${OPENSBI_BIN:-../../opensbi/build/platform/generic/firmware/fw_payload.elf}"
TIMEOUT_SECONDS="${TIMEOUT_SECONDS:-10}"
if [ ! -x "$TESTBENCH" ]; then
echo "Error: Testbench not found. Run 'make -C sim/verilator compile' first."
exit 1
fi
if [ ! -f "$OPENSBI_BIN" ]; then
echo "Error: OpenSBI payload not found: $OPENSBI_BIN"
echo "Set OPENSBI_BIN to a firmware ELF path."
exit 2
fi
echo "Running OpenSBI payload: $OPENSBI_BIN"
timeout "${TIMEOUT_SECONDS}s" "$TESTBENCH" "$OPENSBI_BIN"
exitcode=$?
if [ "$exitcode" -eq 124 ]; then
echo "OpenSBI run timed out"
exit 124
fi
exit "$exitcode"