mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
openocd: get flash and debug files from cli
Get FLASH_FILE and ELFFILE from command line instead of environment variable. The documentation was claiming ELFFILE was given as a command line argument already, but is was not.
This commit is contained in:
parent
6551d8aac0
commit
a0b97ad737
@ -11,7 +11,7 @@ include $(RIOTMAKE)/tools/serial.inc.mk
|
||||
DEBUG_ADAPTER ?= dap
|
||||
|
||||
# this board uses openocd
|
||||
export IMAGE_FILE = $(HEXFILE)
|
||||
FFLAGS ?= flash $(HEXFILE)
|
||||
include $(RIOTMAKE)/tools/openocd.inc.mk
|
||||
|
||||
# generate image checksum from hex file
|
||||
|
36
dist/tools/openocd/openocd.sh
vendored
36
dist/tools/openocd/openocd.sh
vendored
@ -17,30 +17,33 @@
|
||||
#
|
||||
# The script supports the following actions:
|
||||
#
|
||||
# flash: flash a given ELF file to the target.
|
||||
# flash: flash <image_file>
|
||||
# flash given file to the target.
|
||||
#
|
||||
# options:
|
||||
# IMAGE_FILE: Filename of the file that will be flashed
|
||||
# <image_file>: Filename of the file that will be flashed
|
||||
# PRE_FLASH_CHECK_SCRIPT: a command to run before flashing to
|
||||
# verify the integrity of the image to be flashed. ELFFILE is
|
||||
# verify the integrity of the image to be flashed. <image_file> is
|
||||
# passed as a command line argument to this command.
|
||||
# Even though the file name variable is named ELFFILE, flashing
|
||||
# works with any file format recognized by OpenOCD (elf, ihex, s19, bin).
|
||||
#
|
||||
# debug: starts OpenOCD as GDB server in the background and
|
||||
# Flashing works with any file format recognized by OpenOCD
|
||||
# (elf, ihex, s19, bin).
|
||||
#
|
||||
# debug: debug <elfile>
|
||||
# starts OpenOCD as GDB server in the background and
|
||||
# connects to the server with the GDB client specified by
|
||||
# the board
|
||||
#
|
||||
# options:
|
||||
# <elffile>: path to the file to debug, must be in a format
|
||||
# recognized by GDB (preferably ELF, it will not
|
||||
# work with .bin, .hex or .s19 because they lack
|
||||
# symbol information)
|
||||
# GDB_PORT: port opened for GDB connections
|
||||
# TCL_PORT: port opened for TCL connections
|
||||
# TELNET_PORT: port opened for telnet connections
|
||||
# DBG: debugger client command, default: 'gdb -q'
|
||||
# TUI: if TUI!=null, the -tui option will be used
|
||||
# ELFFILE: path to the file to debug, must be in a format
|
||||
# recognized by GDB (preferably ELF, it will not
|
||||
# work with .bin, .hex or .s19 because they lack
|
||||
# symbol information)
|
||||
#
|
||||
# debug-server: starts OpenOCD as GDB server, but does not connect to
|
||||
# to it with any frontend. This might be useful when using
|
||||
@ -93,10 +96,6 @@
|
||||
# Default offset is 0, meaning the image will be flashed at the address that it
|
||||
# was linked at.
|
||||
: ${IMAGE_OFFSET:=0}
|
||||
# Image file used for flashing. Must be in a format that OpenOCD can handle (ELF,
|
||||
# Intel hex, S19, or raw binary)
|
||||
# Default is to use $ELFFILE
|
||||
: ${IMAGE_FILE:=${ELFFILE}}
|
||||
# Type of image, leave empty to let OpenOCD automatically detect the type from
|
||||
# the file (default).
|
||||
# Valid values: elf, hex, s19, bin (see OpenOCD manual for more information)
|
||||
@ -210,6 +209,7 @@ _flash_address() {
|
||||
# now comes the actual actions
|
||||
#
|
||||
do_flash() {
|
||||
IMAGE_FILE=$1
|
||||
test_config
|
||||
test_imagefile
|
||||
if [ -n "${PRE_FLASH_CHECK_SCRIPT}" ]; then
|
||||
@ -256,6 +256,7 @@ do_flash() {
|
||||
}
|
||||
|
||||
do_debug() {
|
||||
ELFFILE=$1
|
||||
test_config
|
||||
test_elffile
|
||||
# temporary file that saves OpenOCD pid
|
||||
@ -330,15 +331,16 @@ do_reset() {
|
||||
# parameter dispatching
|
||||
#
|
||||
ACTION="$1"
|
||||
shift # pop $1 from $@
|
||||
|
||||
case "${ACTION}" in
|
||||
flash)
|
||||
echo "### Flashing Target ###"
|
||||
do_flash
|
||||
do_flash "$@"
|
||||
;;
|
||||
debug)
|
||||
echo "### Starting Debugging ###"
|
||||
do_debug
|
||||
do_debug "$@"
|
||||
;;
|
||||
debug-server)
|
||||
echo "### Starting GDB Server ###"
|
||||
@ -350,6 +352,8 @@ case "${ACTION}" in
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {flash|debug|debug-server|reset}"
|
||||
echo " flash <flashfile>"
|
||||
echo " debug <elffile>"
|
||||
exit 2
|
||||
;;
|
||||
esac
|
||||
|
@ -3,8 +3,8 @@ export DEBUGGER = $(RIOTTOOLS)/openocd/openocd.sh
|
||||
export DEBUGSERVER = $(RIOTTOOLS)/openocd/openocd.sh
|
||||
export RESET ?= $(RIOTTOOLS)/openocd/openocd.sh
|
||||
|
||||
export FFLAGS ?= flash
|
||||
export DEBUGGER_FLAGS ?= debug
|
||||
export FFLAGS ?= flash $(ELFFILE)
|
||||
export DEBUGGER_FLAGS ?= debug $(ELFFILE)
|
||||
export DEBUGSERVER_FLAGS ?= debug-server
|
||||
export RESET_FLAGS ?= reset
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user