Update to add support for MSP430-GCC 4.6 which moved things around;
[goodfet] / firmware / config.mk
1 ##################################
2 ## These are production boards.
3 ##################################
4 mcu = undef
5
6 ifneq (,$(findstring $(board),goodfet20 goodfet10 goodfet11))
7 mcu := msp430f1612
8 platform := goodfet
9 endif
10
11 ifneq (,$(findstring $(board),goodfet21))
12 mcu := msp430f2618
13 platform := goodfet
14 endif
15
16 ifneq (,$(findstring $(board),goodfet30 goodfet31))
17 mcu := msp430f2274
18 platform := goodfet
19 # This will link to fit in a '2254, so unneeded packages should be omited.
20 CONFIG_ccspi = n
21 endif
22
23 ifneq (,$(findstring $(board),goodfet40 goodfet41))
24 mcu := msp430f2618
25 platform := goodfet
26 endif
27
28 ifneq (,$(findstring $(board),nhb12b))
29 mcu := msp430f2618
30 CONFIG_nrf = y
31 platform := nhb12b
32 endif
33
34 ifneq (,$(findstring $(board),nhb12))
35 mcu := msp430f2618
36 CONFIG_nrf = y
37 platform := nhb12
38 endif
39
40 ifneq (,$(findstring $(board),goodfet50 goodfet51))
41 mcu := msp430f5510
42 platform := goodfet
43 endif
44
45 ifeq ($(board),telosb)
46 mcu := msp430f1611
47 platform := telosb
48 config := monitor spi ccspi
49 CFLAGS += -Duseuart1
50 endif
51
52 ifeq ($(board),telosbbt)
53 mcu :=msp430f1612
54 platform := telosb
55 config := monitor spi ccspi
56 endif
57
58
59
60
61 ##################################
62 ## These are experimental boards.
63 ##################################
64
65 ifneq (,$(findstring $(board),donbfet))
66 GCC := avr-gcc
67 mcu := atmega644p
68 CFLAGS=$(DEBUG) -mmcu=$(mcu) -W -Os -mcall-prologues -Wall -Wextra -Wuninitialized -fpack-struct -fshort-enums -funsigned-bitfields
69 config := monitor avr spi jscan
70 endif
71
72 ifneq (,$(findstring $(board),arduino))
73 GCC := avr-gcc
74 mcu := atmega168
75 #BSL := avrdude -V -F -c stk500v1 -p m328p -b 57600 -P /dev/tty.usbserial-* -U flash:w:blink.hex
76 LDFLAGS := 
77 config := monitor
78 endif
79
80 ifneq (,$(findstring $(board),tilaunchpad))
81 mcu :=msp430f1612
82 CFLAGS := -DDEBUG_LEVEL=3 -DDEBUG_START=1 -DINBAND_DEBUG
83 #CFLAGS+= -Werror
84 config := monitor chipcon i2c
85 endif
86
87
88
89
90 ifeq ($(mcu),undef)
91 $(error Please define board, as explained in the README)
92 endif
93 #platform := $(board)
94
95 AVAILABLE_APPS = monitor spi jtag sbw jtag430 jtag430x2 i2c jtagarm7 ejtag jtagxscale openocd chipcon avr pic adc nrf ccspi glitch smartcard ps2 slc2 
96
97 # defaults
98 CONFIG_monitor    ?= y
99 CONFIG_spi        ?= y
100 CONFIG_jtag       ?= n
101 CONFIG_sbw        ?= n
102 CONFIG_jtag430    ?= y
103 CONFIG_jtag430x2  ?= y
104 CONFIG_i2c        ?= n
105 CONFIG_jtagarm7   ?= n
106 CONFIG_ejtag      ?= n
107 CONFIG_jtagxscale ?= n
108 CONFIG_openocd    ?= y
109 CONFIG_chipcon    ?= y
110 CONFIG_avr        ?= y
111 CONFIG_pic        ?= n
112 CONFIG_adc        ?= n
113 CONFIG_nrf        ?= n
114 CONFIG_ccspi      ?= y
115 CONFIG_glitch     ?= n
116 CONFIG_smartcard  ?= n
117 CONFIG_ps2        ?= n
118 CONFIG_slc2       ?= n
119
120 #The CONFIG_foo vars are only interpreted if $(config) is unset.
121 ifeq ($(config),undef)
122 config += $(foreach app,$(AVAILABLE_APPS),$(if $(findstring $(CONFIG_$(app)),y yes t true Y YES T TRUE),$(app)))
123 endif