From 144ec0659c16fcdef5eaee570f84ee2d26f11580 Mon Sep 17 00:00:00 2001 From: Romain Goyet Date: Wed, 9 Jan 2019 10:36:38 +0100 Subject: [PATCH] [build] Add an f730 folder --- build/f730/gdb_script.gdb | 36 ++++++++++++++++++++++++++++++++++++ build/f730/openocd.cfg | 7 +++++++ build/platform.f730.mak | 1 + build/targets.device.mak | 4 ++-- build/targets.f730.mak | 1 + 5 files changed, 47 insertions(+), 2 deletions(-) create mode 100644 build/f730/gdb_script.gdb create mode 100644 build/f730/openocd.cfg create mode 100644 build/platform.f730.mak create mode 100644 build/targets.f730.mak diff --git a/build/f730/gdb_script.gdb b/build/f730/gdb_script.gdb new file mode 100644 index 000000000..515e20021 --- /dev/null +++ b/build/f730/gdb_script.gdb @@ -0,0 +1,36 @@ +# Add a routine to debug ARM exceptions + +define armex + printf "SCB_CFSR 0x%x\n", *0xE000ED28 + printf "SCB_HFSR 0x%x\n", *0xE000ED2C + printf "SCB_HFSR 0x%x\n", *0xE000ED2C + printf "SCB_MMAR 0x%x\n", *0xE000ED34 + printf "SCB_BFAR 0x%x\n", *0xE000ED38 + printf "xPSR 0x%x\n", *(int *)($msp+28) + printf "ReturnAddress 0x%x\n", *(int *)($msp+24) + printf "LR (R14) 0x%x\n", *(int *)($msp+20) + printf "R12 0x%x\n", *(int *)($msp+16) + printf "R3 0x%x\n", *(int *)($msp+12) + printf "R2 0x%x\n", *(int *)($msp+8) + printf "R1 0x%x\n", *(int *)($msp+4) + printf "R0 0x%x\n", *(int *)($msp) + printf "Return instruction:\n" + x/i *(int *)($msp+24) +end + +document armex +ARMv7 Exception entry behavior. +xPSR, ReturnAddress, LR (R14), R12, R3, R2, R1, and R0 +end + +# Let's connect to OpenOCD +target remote localhost:3333 + +# GDB pagniation is annoying +set pagination off + +# Load our executable +load + +# Tell OpenOCD to reset and halt +monitor reset halt diff --git a/build/f730/openocd.cfg b/build/f730/openocd.cfg new file mode 100644 index 000000000..0645bf05a --- /dev/null +++ b/build/f730/openocd.cfg @@ -0,0 +1,7 @@ +source [find interface/stlink.cfg] + +transport select hla_swd + +source [find target/stm32f7x.cfg] + +reset_config none separate diff --git a/build/platform.f730.mak b/build/platform.f730.mak new file mode 100644 index 000000000..1c9bcd804 --- /dev/null +++ b/build/platform.f730.mak @@ -0,0 +1 @@ +include build/platform.device.mak diff --git a/build/targets.device.mak b/build/targets.device.mak index 5a33eea6f..4df3b5f38 100644 --- a/build/targets.device.mak +++ b/build/targets.device.mak @@ -25,7 +25,7 @@ products += $(patsubst %.$(EXE),%.map,$(filter %.$(EXE),$(products))) .PHONY: %_run %_run: %.$(EXE) - $(GDB) -x build/device/gdb_script.gdb $< + $(GDB) -x build/$(PLATFORM)/gdb_script.gdb $< %.map: %.elf @echo "LDMAP $@" @@ -48,7 +48,7 @@ products += $(patsubst %.$(EXE),%.map,$(filter %.$(EXE),$(products))) .PHONY: openocd openocd: - openocd -f build/device/openocd.cfg + openocd -f build/$(PLATFORM)/openocd.cfg ifeq ($(EPSILON_USB_DFU_XIP)$(EPSILON_DEVICE_BENCH),10) flasher.$(EXE): LDFLAGS = --gc-sections -T ion/src/device/usb/flasher.ld diff --git a/build/targets.f730.mak b/build/targets.f730.mak new file mode 100644 index 000000000..11effd8c7 --- /dev/null +++ b/build/targets.f730.mak @@ -0,0 +1 @@ +include build/targets.device.mak