blob: 67d07365a1a60dd8e05ac171a167bb6a9d11106a [file] [log] [blame]
#! /bin/sh
set -e
# Expect the script to run in argument
if [ $# != 1 ]; then
echo "ERROR: No script provided"
echo "usage: $(basename $0) <ds5_script_to_run>"
exit 1
fi
# Is DS-5 command-line debugger found?
if [ ! $(which debugger) ]; then
echo 'ERROR: Failed to find DS-5 command-line debugger.'
echo 'Please add the path to the command-line debugger in your PATH.'
echo 'E.g.: export PATH=<DS-5 install dir>/bin:$PATH'
exit 1
fi
# DS-5 configuration database entry for Juno r0
juno_cdb_entry='ARM Development Boards::Juno ARM Development Platform (r0)::Bare Metal Debug::Bare Metal Debug::Debug Cortex-A53_0::DSTREAM'
# Browse for available DSTREAM connections and lists targets that match the
# connection type specified in the configuration database entry
echo "Trying to detect your DSTREAM unit..."
connections_list=available_connections
debugger --cdb-entry "$juno_cdb_entry" --browse \
| tee $connections_list
# Remove first line in the file (i.e. "Available connections:")
tail -n +2 $connections_list > ${connections_list}_stripped
mv ${connections_list}_stripped ${connections_list}
# Use first available connection
read connection < $connections_list || true
rm $connections_list
if [ -z "$connection" ] ; then
echo "ERROR: Found no connection"
exit 1
fi
# Run DS-5 script
echo "Connecting to $connection..."
debugger \
--cdb-entry "$juno_cdb_entry" \
--cdb-entry-param "Connection=$connection" \
--stop_on_connect=false \
--script=$1