#include `uname`.mak
-GOODFET?=/dev/ttyUSB0
+#GOODFET?=/dev/ttyUSB0
+
#For tos-bsl, use --invert-reset --invert-test
-BSL?=goodfet.bsl -c $(GOODFET) --speed=38400
+BSL?=goodfet.bsl --speed=38400
#One of these should be defined explicitly.
#mcu?=msp430x1612
mcu?=RUNCONFIG
+#platform=goodfet
+#platform=telosb
+#platform=z1
+platform?=goodfet
+
#N.B., gcc WILL NOT BITCH if this file doesn't exist.
#GCCINC=-T ldscripts/161x.x
GCCINC=-T ldscripts/$(mcu).x
CCEXTRA?=
-CC=msp430-gcc -Wall -Os -g -mmcu=$(mcu) -D$(mcu) -DGCC $(GCCINC) -I include $(CCEXTRA)
+CC=msp430-gcc -Wall -Os -g -mmcu=$(mcu) -D$(mcu) -D$(platform) -Dplatform=$(platform) -DGCC $(GCCINC) -I include $(CCEXTRA)
#Define extra modules here.
-moreapps?=apps/i2c/i2c.o apps/chipcon/chipcon.o apps/glitch/glitch.o apps/jtag/sbw.o apps/smartcard/smartcard.o
+#moreapps?=apps/i2c/i2c.o apps/glitch/glitch.o apps/jtag/sbw.o apps/smartcard/smartcard.o apps/jtag/ejtag.o apps/jtag/jtagxscale.o
+moreapps?=apps/jtag/sbw.o apps/glitch/glitch.o apps/jtag/jtagarm7.o
+# should include apps/jtag/jtagarm7tdmi.o to build jtag for ARM7
+# should include apps/pic/dspic33f.o to build support for PIC24H/dsPIC33F
+# should include apps/adc/adc.o to build support for ADC10 app (still specific to x2274, GoodFET31).
+
+apps= $(moreapps) apps/chipcon/chipcon.o apps/radios/nrf.o apps/radios/ccspi.o apps/monitor/monitor.o apps/spi/spi.o apps/jtag/jtag.o apps/jtag/jtag430.o apps/jtag/jtag430x2.o apps/avr/avr.o
+
+#apps/chipcon/chipconasm.o removed
+libs= lib/$(mcu).o lib/command.o apps/jtag/jtag430asm.o lib/dco_calib.o
-apps= $(moreapps) apps/monitor/monitor.o apps/spi/spi.o apps/jtag/jtag.o apps/jtag/jtag430.o apps/jtag/jtag430x2.o apps/avr/avr.o apps/jtag/ejtag.o apps/jtag/jtagxscale.o apps/jtag/jtagarm7tdmi-disabled.o
-libs= lib/$(mcu).o lib/command.o apps/jtag/jtag430asm.o apps/chipcon/chipconasm.o
app= goodfet
all: $(app).hex
-lib/.o:
+lib/.o: config
./configure
false
lib/RUNCONFIG.o:
./configure
false
-
+config:
+ cp platforms/$(platform).h include/config.h
goodfet.hex: goodfet
run:
../client/goodfet.msp430 test
install: $(app).hex
- #$(BSL) -e
- #ls info.txt && $(BSL) -p info.txt || true #MSP430F2xx targets only, inelegant.
$(BSL) -e -p $(app).hex
+ ls info.txt && $(BSL) -P $(app).hex -p info.txt || true #MSP430F2xx targets only, inelegant.
verify:
$(BSL) -P $(app).hex -v $(app).hex
dumpinfo:
$(BSL) --dumpinfo
+$(app).c: config
$(app): $(app).c $(libs) $(apps)
$(app).hex: $(app)
msp430-objcopy goodfet -O ihex goodfet.hex
erase:
$(BSL) -e
clean:
- rm -f $(app) $(app).hex $(libs) $(apps)
+ rm -f $(app) $(app).hex $(libs) $(apps) include/config.h
docs:
doxygen
pushdocs: docs