aboutsummaryrefslogtreecommitdiff
path: root/bin/debug
diff options
context:
space:
mode:
Diffstat (limited to 'bin/debug')
-rwxr-xr-xbin/debug14
1 files changed, 12 insertions, 2 deletions
diff --git a/bin/debug b/bin/debug
index f87a3b5..5553270 100755
--- a/bin/debug
+++ b/bin/debug
@@ -6,11 +6,21 @@ OPENOCD=openocd
OPENOCD_BOARD_DIR=/usr/share/openocd/scripts/board
OPENOCD_PROC_FILE=stm32f4discovery.cfg
if [ "x`lsusb -d 0483:374b`" != "x" ]; then
- OPENOCD_PROC_FILE=st_nucleo_f4.cfg
+ for fn in st_nucleo_f4.cfg st_nucleo_f401re.cfg; do
+ if [ -f "$OPENOCD_BOARD_DIR/$fn" ]; then
+ OPENOCD_PROC_FILE="$fn"
+ fi
+ done
fi
$OPENOCD -f $OPENOCD_BOARD_DIR/$OPENOCD_PROC_FILE &
-GDB=arm-none-eabi-gdb
+for gdb in gdb-multiarch arm-none-eabi-gdb; do
+ if command -v $gdb &>/dev/null; then
+ GDB=$gdb
+ break
+ fi
+done
+
$GDB -ex "target remote localhost:3333" -ex "set remote hardware-breakpoint-limit 6" -ex "set remote hardware-watchpoint-limit 4" $PROJ.elf
kill -9 $(pidof $OPENOCD)