forked from Archive/PX4-Autopilot
NuttX debug jlink scripts minor improvements
- script return non-zero exit if there's a failure - upload script look for both gdb-multiarch and arm-none-eabi-gdb
This commit is contained in:
parent
f70b6fbf0b
commit
fcf0d3536f
|
@ -1,7 +1,5 @@
|
|||
#! /bin/sh
|
||||
|
||||
set -o xtrace
|
||||
|
||||
@JLinkGDBServerExe_PATH@ -device @DEBUG_DEVICE@ -select usb -endian little -if SWD -speed auto -ir -LocalhostOnly 1 -strict -vd -singlerun &
|
||||
|
||||
cd @PX4_BINARY_DIR@ && @CMAKE_GDB@ -silent -nh \
|
||||
|
@ -12,3 +10,6 @@ cd @PX4_BINARY_DIR@ && @CMAKE_GDB@ -silent -nh \
|
|||
-ex "monitor reset 0" \
|
||||
-ex "continue" \
|
||||
@PX4_CONFIG@.elf
|
||||
|
||||
# exit with status of last command
|
||||
exit $?
|
||||
|
|
|
@ -1,7 +1,11 @@
|
|||
#! /bin/sh
|
||||
|
||||
set -o xtrace
|
||||
|
||||
killall JLinkGDBServerCLExe
|
||||
|
||||
JLinkGDBServerCLExe -silent -device @DEBUG_DEVICE@ -select usb -if SWD -speed auto -LocalhostOnly 1 -strict -vd -singlerun &
|
||||
@JLinkGDBServerCLExe_PATH@ -silent -device @DEBUG_DEVICE@ -select usb -if SWD -speed auto -LocalhostOnly 1 -strict -vd -singlerun -timeout 3000 -powertarget 0 -nogui &
|
||||
sleep 2
|
||||
|
||||
pgrep -i JLinkGDBServer
|
||||
|
||||
# exit with status of last command
|
||||
exit $?
|
||||
|
|
|
@ -1,14 +1,41 @@
|
|||
#! /bin/sh
|
||||
|
||||
set -o xtrace
|
||||
if command -v gdb-multiarch &> /dev/null
|
||||
then
|
||||
GDB_CMD=$(command -v gdb-multiarch)
|
||||
|
||||
gdb-multiarch -silent -nx -batch \
|
||||
-ex "target remote localhost:2331" \
|
||||
-ex "monitor reset 0" \
|
||||
-ex "load" \
|
||||
-ex "monitor reset 0" \
|
||||
-ex "monitor go" \
|
||||
-ex "monitor sleep 3000" \
|
||||
-ex "disconnect" \
|
||||
-ex "quit" \
|
||||
${1}
|
||||
elif command -v arm-none-eabi-gdb &> /dev/null
|
||||
then
|
||||
GDB_CMD=$(command -v arm-none-eabi-gdb)
|
||||
|
||||
else
|
||||
echo "gdb arm-none-eabi or multi-arch not found"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
file ${1}
|
||||
|
||||
gdb_cmd_file=$(mktemp)
|
||||
|
||||
cat >"${gdb_cmd_file}" <<EOL
|
||||
target remote localhost:2331
|
||||
monitor reset 0
|
||||
load
|
||||
monitor reset 0
|
||||
monitor go
|
||||
EOL
|
||||
|
||||
for i in 1 2 3;
|
||||
do
|
||||
${GDB_CMD} -silent --nh --nx --nw -batch -x ${gdb_cmd_file} ${1}
|
||||
gdb_ret=$?
|
||||
|
||||
if [ $gdb_ret -ne 0 ]; then
|
||||
echo "GDB error, retrying"
|
||||
sleep 3
|
||||
else
|
||||
exit 0
|
||||
fi
|
||||
done
|
||||
|
||||
exit 1
|
||||
|
|
Loading…
Reference in New Issue