]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - support/make/avr/eprb.extra
updated AVR specific makefiles with dual support for uisp and avrdude
[tinyos-2.x.git] / support / make / avr / eprb.extra
index 3dcd4b7f192b459e286ea1ec3a1496727dec8aba..9b2da7d5a603c02ba4e6a9b1c412d42f0af72c51 100644 (file)
@@ -6,12 +6,28 @@ $(error EPRB must be defined, try "make $(TARGETS) help")
 endif
 
 PROGRAM = eprb
-PROGRAMMER_FLAGS = -dprog=stk500 -dhost=$(EPRB) --wr_fuse_h=$(AVR_FUSE_H) $(PROGRAMMER_PART) $(PROGRAMMER_EXTRA_FLAGS_STK)
+
+ifeq ($(PROGRAMMER),avrdude)
+    ifdef BOOTLOADER
+      ifeq ($(shell [ -f /bin/cygwin1.dll ] && echo cygwin),cygwin)
+        BOOTLOADER := $(shell cygpath -m $(BOOTLOADER))
+      endif
+    endif
+    PROGRAMMER_FLAGS = -cstk500 -P$(EPRB)   -U hfuse:w:$(AVR_FUSE_H):m $(PROGRAMMER_PART) $(PROGRAMMER_EXTRA_FLAGS) $(PROGRAMMER_EXTRA_FLAGS_STK)
+    PROGRAMMER_INSTALL_SREC_FLAGS = -U flash:w:$(INSTALL_SREC):a
+    PROGRAMMER_INSTALL_BOOTLOADER_FLAGS = -D -U flash:w:$(BOOTLOADER):a
+endif
+
+ifeq ($(PROGRAMMER),uisp)
+    PROGRAMMER_FLAGS = -dprog=stk500 -dhost=$(EPRB)     --wr_fuse_h=$(AVR_FUSE_H) $(PROGRAMMER_PART) $(PROGRAMMER_EXTRA_FLAGS) $(PROGRAMMER_EXTRA_FLAGS_STK)
+    PROGRAMMER_INSTALL_SREC_FLAGS = --erase --upload if=$(INSTALL_SREC) --verify
+    PROGRAMMER_INSTALL_BOOTLOADER_FLAGS = --upload if=$(BOOTLOADER) --verify
+endif
 
 program: FORCE
        @echo "    installing $(PLATFORM) binary using eprb"
-       $(PROGRAMMER) $(PROGRAMMER_FLAGS) --erase --upload if=$(INSTALL_SREC)
+       $(PROGRAMMER) $(PROGRAMMER_FLAGS) $(PROGRAMMER_INSTALL_SREC_FLAGS)
 
 program_bl: FORCE
        @echo "    installing $(PLATFORM) bootloader using eprb"
-       $(PROGRAMMER) $(PROGRAMMER_FLAGS) --upload if=$(BOOTLOADER)
+       $(PROGRAMMER) $(PROGRAMMER_FLAGS) $(PROGRAMMER_INSTALL_BOOTLOADER_FLAGS)