From 6386c12af8af2dc7099dca3ba3b967016bfccf0d Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Thu, 24 May 2012 22:18:52 +0000 Subject: added reset2bootloader function git-svn-id: https://svn.spreadspace.org/avr/trunk@30 aa12f405-d877-488e-9caf-2d797e2a1cc7 --- lib/util.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) (limited to 'lib/util.c') diff --git a/lib/util.c b/lib/util.c index 3bf17b1..76f5104 100644 --- a/lib/util.c +++ b/lib/util.c @@ -20,7 +20,10 @@ * along with spreadspace avr utils. If not, see . */ -#include "avr/io.h" +#include +#include +#include + #include "util.h" #if defined(CLKPR) @@ -33,3 +36,47 @@ void cpu_init(void) { CPU_PRESCALE(0); } + +void reset2bootloader(void) +{ +#if defined(__BOARD_teensy1__) || defined(__BOARD_teensy1pp__) || defined(__BOARD_teensy2__) || defined(__BOARD_teensy2pp__) || defined(__BOARD_hhd70dongle__) + cli(); + // disable watchdog, if enabled + // disable all peripherals + UDCON = 1; + USBCON = (1<