From 1ec4ea2d7c3e4bda2a727301901b5c57f17c430b Mon Sep 17 00:00:00 2001 From: Alexandre Abadie Date: Thu, 18 Feb 2021 11:19:48 +0100 Subject: [PATCH] tools/edbg: add wrapper bash script --- dist/tools/edbg/edbg.sh | 51 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100755 dist/tools/edbg/edbg.sh diff --git a/dist/tools/edbg/edbg.sh b/dist/tools/edbg/edbg.sh new file mode 100755 index 0000000000..e1ee99874f --- /dev/null +++ b/dist/tools/edbg/edbg.sh @@ -0,0 +1,51 @@ +#!/usr/bin/env bash + +# Default edbg command +: "${EDBG:=edbg}" +# Edbg command base arguments +: "${EDBG_ARGS:=}" + +test_imagefile() { + if [ ! -f "${IMAGE_FILE}" ]; then + echo "Error: Unable to locate IMAGE_FILE" + echo " (${IMAGE_FILE})" + exit 1 + fi +} + +do_flash() { + IMAGE_FILE=$1 + test_imagefile + + # Configure edbg flash flags + local _fflags="${EDBG_ARGS} --verbose --file ${IMAGE_FILE} --verify" + + # flash device + sh -c "${EDBG} ${_fflags} || ${EDBG} ${_fflags} --program" && echo 'Done flashing' +} + +do_reset() { + sh -c "${EDBG} ${EDBG_ARGS}" +} + +# +# parameter dispatching +# +ACTION="$1" +shift # pop $1 from $@ + +case "${ACTION}" in + flash) + echo "### Flashing Target ###" + do_flash "$@" + ;; + reset) + echo "### Resetting Target ###" + do_reset + ;; + *) + echo "Usage: $0 {flash|reset}" + echo " flash " + exit 2 + ;; +esac