#include `uname`.mak
-#GOODFET?=/dev/ttyUSB0
+GOODFET?=/dev/ttyUSB0
#For tos-bsl, use --invert-reset --invert-test
BSL?=goodfet.bsl --speed=38400
#One of these should be defined explicitly.
#Default removed because of confusion.
-#mcu=msp430x2274
-#mcu=msp430x2618
+#mcu?=msp430x2274
+#mcu?=msp430x2618
#mcu?=msp430x1612
mcu?=RUNCONFIG
#GCCINC=-T ldscripts/161x.x
GCCINC=-T ldscripts/$(mcu).x
-CCEXTRA?=
-CC=msp430-gcc -Wall -Os -g -mmcu=$(mcu) -D$(mcu) -D$(platform) -Dplatform=$(platform) -DGCC $(GCCINC) -I include -I platforms $(CCEXTRA)
+CCEXTRA?= -D$(mcu) -D$(platform) -Dplatform=$(platform) -DGCC $(GCCINC) -I include -I platforms
+GCC?=msp430-gcc
+CC=$(GCC) -Wall -Os -fno-strict-aliasing -g -mmcu=$(mcu) $(CCEXTRA)
# Available Applications
# ======================
# jtagarm7 -- ARM7TDMI JTAG
# ejtag -- MIPS JTAG
# jtagxscale -- XScale JTAG
+# openocd -- OpenOCD bitbang device
# Microcontrollers:
# chipcon -- Chipcon radio 8051 debugging
# XScale PXA255 JTAG
# config = monitor jtagxscale
+# OpenOCD bit-bang device
+#config = monitor openocd
+
# Old Default Config
-#config = monitor sbw chipcon nrf ccspi spi jtagarm7 jtag430 jtag430x2 avr
+# config = monitor sbw chipcon nrf ccspi spi jtagarm7 jtag430 jtag430x2 avr
# New default.
-config = monitor chipcon ccspi nrf spi jtagarm7 jtag430 jtag430x2 avr
-
+config ?= monitor chipcon spi jtag430 jtag430x2 avr openocd ccspi
# Build the needed list of app and lib object files from the config
apps=
hdrs+= jtagxscale.h
endif
+# include openocd app
+ifeq ($(filter openocd, $(config)), openocd)
+ # add in base jtag code if not already
+ ifneq ($(filter apps/jtag/jtag.o, $(apps)), apps/jtag/jtag.o)
+ apps+= apps/jtag/jtag.o
+ hdrs+= jtag.h
+ endif
+ apps+= apps/jtag/openocd.o
+ hdrs+= openocd.h
+endif
+
# include chipcon app
ifeq ($(filter chipcon, $(config)), chipcon)
apps+= apps/chipcon/chipcon.o
hdrs+= avr.h
endif
-
-
# include pic app
ifeq ($(filter pic, $(config)), pic)
apps+= apps/pic/pic.o
dumpinfo:
$(BSL) --dumpinfo
$(app).c: config builddate appsfiles err
-$(app): $(app).c $(libs) $(apps)
+$(app): $(libs) $(apps)
$(app).hex: $(app)
msp430-objcopy goodfet -O ihex goodfet.hex
m4s: $(app).hex