config/scripts/flash_uc

43 lines
752 B
Bash
Executable File

#!/bin/bash
set -euo pipefail
VERSION="1.0"
JLINK_INSTALL_PATH="/opt/SEGGER/JLink"
GDB_CMDS="target remote localhost:2331
monitor reset
monitor halt
load
compare-sections
q
"
jlinkPID=""
TMP=""
function finish {
if [ "$jlinkPID" != "" ]; then
echo "Stopping Jlink"
kill $jlinkPID
fi
if [ "$TMP" != "" ]; then
echo "Cleaning tmp files"
rm $TMP
fi
}
trap finish EXIT
echo "Version: $VERSION"
if [ ! -e "$1" ];then
>&2 echo "Cannot access $1, exiting"
exit 1
fi
"$JLINK_INSTALL_PATH"/JLinkGDBServer -select USB -device MKL02Z32xxx4 -endian little -if SWD -speed 1000 > /dev/null &
jlinkPID=$!
TMP=$(mktemp /tmp/XXXXX-gdbcmd)
echo "${GDB_CMDS}" > "$TMP"
gdb-multiarch -x "$TMP" "$1"