forked from ChibiOS/ChibiOS-Contrib
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
+ Added make targets for flashing and debugging via Black Magic and gdb
- Loading branch information
1 parent
dc72ea6
commit d2fa4a4
Showing
1 changed file
with
57 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
## | ||
## make targets for the Black Magic Probe | ||
## See: https://github.com/blacksphere/blackmagic (Black Magic) | ||
## See: https://github.com/blacksphere/blackmagic/wiki/Frequently-Asked-Questions (Black Magic udev rules) | ||
## | ||
## Provides the following targets: | ||
## | ||
## all: Wrapper for the elf binary | ||
## flash: Uses GDB to flash the target via Black Magic | ||
## debug: Flashes the target and allows for debugging using gdb and Black Magic | ||
## debug-tui: Flashes the target and allows for debugging using gdb's TUI and Black Magic | ||
## | ||
|
||
GDB ?= arm-none-eabi-gdb # Path to the arm-none-eabi-gdb binary | ||
GDB_PROGRAM ?= $(BUILDDIR)/$(PROJECT).elf # Path to the elf binary | ||
GDB_BREAK ?= main # Function to break at when starting the debugger | ||
|
||
BMP_GDB ?= /dev/ttyBmpGdb # Device file for the Black Magic GDB devic | ||
|
||
all: $(GDB_PROGRAM) | ||
|
||
flash: $(GDB_PROGRAM) | ||
$(GDB) $(GDB_PROGRAM) -nx --batch \ | ||
-ex 'target extended-remote $(BMP_GDB)' \ | ||
-ex 'monitor swdp_scan' \ | ||
-ex 'attach 1' \ | ||
-ex 'load' \ | ||
-ex 'compare-sections' \ | ||
-ex 'kill' | ||
|
||
debug: $(GDB_PROGRAM) | ||
$(GDB) $(GDB_PROGRAM) -nx \ | ||
-ex 'target extended-remote $(BMP_GDB)' \ | ||
-ex 'monitor swdp_scan' \ | ||
-ex 'attach 1' \ | ||
-ex 'load' \ | ||
-ex 'compare-sections' \ | ||
-ex 'set mem inaccessible-by-default off' \ | ||
-ex 'break $(GDB_BREAK)' \ | ||
-ex 'c' | ||
|
||
debug-tui: $(GDB_PROGRAM) | ||
$(GDB) $(GDB_PROGRAM) -nx \ | ||
-ex 'target extended-remote $(BMP_GDB)' \ | ||
-ex 'monitor swdp_scan' \ | ||
-ex 'attach 1' \ | ||
-ex 'load' \ | ||
-ex 'compare-sections' \ | ||
-ex 'set mem inaccessible-by-default off' \ | ||
-ex 'set pagination off' \ | ||
-ex 'focus cmd' \ | ||
-ex 'layout src' \ | ||
-ex 'break $(GDB_BREAK)' \ | ||
-ex 'c' \ | ||
-ex 'set pagination on' | ||
|
||
.PHONY: all flash debug debug-tui |