Instead of OOCD_SERIAL triggering an attempt to use a specific ftdi based adapter, introduce common target/interface pairs, OOCD_INTERFACE and OOCD_TARGET, and an override via OOCD_FILE allowing full control. Further, attempt to connect to a running openocd instance to flash if possible. This _will not_ work well if you have multiple openocd instances open at once, but that's a rare use case. Examples: OOCD_INTERFACE=stlink-v2 OOCD_TARGET=stm32f0x --> openocd ... -f interface/stlink-v2.cfg -f target/stm32f0x.cfg) OOCD_FILE=board/ek-lm4f120xl.cfg --> openocd ... -f $(OOCD_FILE) (ie, the variable is passed untouched) As part of implementing this, correct variables that were always wrong, and update the openocd flashing commands to use current commands.
45 lines
1.5 KiB
Makefile
45 lines
1.5 KiB
Makefile
##
|
|
## This file is part of the libopencm3 project.
|
|
##
|
|
## Copyright (C) 2009 Uwe Hermann <uwe@hermann-uwe.de>
|
|
## Copyright (C) 2010 Piotr Esden-Tempski <piotr@esden.net>
|
|
##
|
|
## This library is free software: you can redistribute it and/or modify
|
|
## it under the terms of the GNU Lesser General Public License as published by
|
|
## the Free Software Foundation, either version 3 of the License, or
|
|
## (at your option) any later version.
|
|
##
|
|
## This library is distributed in the hope that it will be useful,
|
|
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
## GNU Lesser General Public License for more details.
|
|
##
|
|
## You should have received a copy of the GNU Lesser General Public License
|
|
## along with this library. If not, see <http://www.gnu.org/licenses/>.
|
|
##
|
|
|
|
LIBNAME = opencm3_stm32f1
|
|
DEFS += -DSTM32F1
|
|
|
|
FP_FLAGS ?= -msoft-float
|
|
ARCH_FLAGS = -mthumb -mcpu=cortex-m3 $(FP_FLAGS) -mfix-cortex-m3-ldrd
|
|
|
|
################################################################################
|
|
# OpenOCD specific variables
|
|
|
|
OOCD ?= openocd
|
|
OOCD_INTERFACE ?= flossjtag
|
|
OOCD_TARGET ?= stm32f1x
|
|
|
|
################################################################################
|
|
# Black Magic Probe specific variables
|
|
# Set the BMP_PORT to a serial port and then BMP is used for flashing
|
|
BMP_PORT ?=
|
|
|
|
################################################################################
|
|
# texane/stlink specific variables
|
|
#STLINK_PORT ?= :4242
|
|
|
|
|
|
include ../../../../rules.mk
|