1 diff -Naurp configure.ac configure.ac
2 --- configure.ac 2012-12-12 13:24:34.000000000 +0530
3 +++ configure.ac 2012-12-12 13:25:18.000000000 +0530
4 @@ -919,6 +919,9 @@ AM_CONDITIONAL(HAS_atmega64c1, test "x$H
5 CHECK_AVR_DEVICE(atmega64hve)
6 AM_CONDITIONAL(HAS_atmega64hve, test "x$HAS_atmega64hve" = "xyes")
8 +CHECK_AVR_DEVICE(atmega64hve2)
9 +AM_CONDITIONAL(HAS_atmega64hve2, test "x$HAS_atmega64hve2" = "xyes")
11 CHECK_AVR_DEVICE(atmega64m1)
12 AM_CONDITIONAL(HAS_atmega64m1, test "x$HAS_atmega64m1" = "xyes")
14 @@ -1405,6 +1408,7 @@ AC_CONFIG_FILES([
15 avr/lib/avr5/atmega6490p/Makefile
16 avr/lib/avr5/atmega64c1/Makefile
17 avr/lib/avr5/atmega64hve/Makefile
18 + avr/lib/avr5/atmega64hve2/Makefile
19 avr/lib/avr5/atmega64m1/Makefile
20 avr/lib/avr5/atmega128/Makefile
21 avr/lib/avr5/atmega1280/Makefile
22 diff -Naurp devtools/gen-avr-lib-tree.sh devtools/gen-avr-lib-tree.sh
23 --- devtools/gen-avr-lib-tree.sh 2012-12-12 13:24:34.000000000 +0530
24 +++ devtools/gen-avr-lib-tree.sh 2012-12-12 13:26:38.000000000 +0530
25 @@ -255,6 +255,7 @@ atmega6490a:crtm6490a.o:${DEV_DEFS}:${CF
26 atmega6490p:crtm6490p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
27 atmega64c1:crtm64c1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
28 atmega64hve:crtm64hve.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
29 +atmega64hve2:crtm64hve2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
30 atmega64m1:crtm64m1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
31 atmega128:crtm128.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
32 atmega1280:crtm1280.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
33 diff -Naurp doc/api/main_page.dox doc/api/main_page.dox
34 --- doc/api/main_page.dox 2012-12-12 13:24:34.000000000 +0530
35 +++ doc/api/main_page.dox 2012-12-12 13:30:18.000000000 +0530
36 @@ -261,6 +261,7 @@ compile-time.
44 diff -Naurp doc/api/using-tools.dox doc/api/using-tools.dox
45 --- doc/api/using-tools.dox 2012-12-12 13:24:34.000000000 +0530
46 +++ doc/api/using-tools.dox 2012-12-12 13:30:52.000000000 +0530
47 @@ -386,6 +386,7 @@ AVR will be defined as well when using t
48 <tr><td>avr5</td><td>atmega649p</td><td>__AVR_ATmega649P__</td></tr>
49 <tr><td>avr5</td><td>atmega64c1</td><td>__AVR_ATmega64C1__</td></tr>
50 <tr><td>avr5</td><td>atmega64hve</td><td>__AVR_ATmega64HVE__</td></tr>
51 + <tr><td>avr5</td><td>atmega64hve2</td><td>__AVR_ATmega64HVE2__</td></tr>
52 <tr><td>avr5</td><td>atmega64m1</td><td>__AVR_ATmega64M1__</td></tr>
53 <tr><td>avr5</td><td>m3000</td><td>__AVR_M3000__</td></tr>
55 diff -Naurp include/avr/eeprom.h include/avr/eeprom.h
56 --- include/avr/eeprom.h 2012-12-12 13:24:34.000000000 +0530
57 +++ include/avr/eeprom.h 2012-12-12 13:29:02.000000000 +0530
59 # define _EEPROM_SUFFIX _m32hvbrevb
60 #elif defined (__AVR_ATmega64HVE__)
61 # define _EEPROM_SUFFIX _m64hve
62 +#elif defined (__AVR_ATmega64HVE2__)
63 +# define _EEPROM_SUFFIX _m64hve2
64 #elif defined (__AVR_ATmega406__)
65 # define _EEPROM_SUFFIX _m406
66 #elif defined (__AVR_ATmega16__)
67 diff -Naurp include/avr/io.h include/avr/io.h
68 --- include/avr/io.h 2012-12-12 13:24:34.000000000 +0530
69 +++ include/avr/io.h 2012-12-12 13:29:49.000000000 +0530
71 # include <avr/iom649p.h>
72 #elif defined (__AVR_ATmega64HVE__)
73 # include <avr/iom64hve.h>
74 +#elif defined (__AVR_ATmega64HVE2__)
75 +# include <avr/iom64hve2.h>
76 #elif defined (__AVR_ATmega103__)
77 # include <avr/iom103.h>
78 #elif defined (__AVR_ATmega32__)
79 diff -Naurp include/avr/Makefile.am include/avr/Makefile.am
80 --- include/avr/Makefile.am 2012-12-12 13:24:34.000000000 +0530
81 +++ include/avr/Makefile.am 2012-12-12 13:27:11.000000000 +0530
82 @@ -149,6 +149,7 @@ avr_HEADERS = \
90 diff -Naurp include/avr/power.h include/avr/power.h
91 --- include/avr/power.h 2012-12-12 13:24:34.000000000 +0530
92 +++ include/avr/power.h 2012-12-13 11:02:12.000000000 +0530
93 @@ -1709,6 +1709,23 @@ do{ \
97 +#elif defined(__AVR_ATmega64HVE2__)
99 +#define power_lin_enable() (PRR0 &= (uint8_t)~(1 << PRLIN))
100 +#define power_lin_disable() (PRR0 |= (uint8_t)(1 << PRLIN))
102 +#define power_spi_enable() (PRR0 &= (uint8_t)~(1 << PRSPI))
103 +#define power_spi_disable() (PRR0 |= (uint8_t)(1 << PRSPI))
105 +#define power_timer0_enable() (PRR0 &= (uint8_t)~(1 << PRTIM0))
106 +#define power_timer0_disable() (PRR0 |= (uint8_t)(1 << PRTIM0))
108 +#define power_timer1_enable() (PRR0 &= (uint8_t)~(1 << PRTIM1))
109 +#define power_timer1_disable() (PRR0 |= (uint8_t)(1 << PRTIM1))
111 +#define power_all_enable() (PRR0 &= (uint8_t)~((1<<PRLIN)|(1<<PRSPI)|(1<<PRTIM0)|(1<<PRTIM1)))
112 +#define power_all_disable() (PRR0 |= (uint8_t)((1<<PRLIN)|(1<<PRSPI)|(1<<PRTIM0)|(1<<PRTIM1)))
114 #elif defined(__AVR_ATmega16M1__) \
115 || defined(__AVR_ATmega32C1__) \
116 || defined(__AVR_ATmega32M1__) \
117 @@ -2107,7 +2107,8 @@ Gets and returns the clock prescaler reg
118 #elif defined(__AVR_ATmega16HVB__) \
119 || defined(__AVR_ATmega16HVBREVB__) \
120 || defined(__AVR_ATmega32HVB__) \
121 -|| defined(__AVR_ATmega32HVBREVB__)
122 +|| defined(__AVR_ATmega32HVBREVB__) \
123 +|| defined(__AVR_ATmega64HVE2__)
127 diff -Naurp include/avr/sleep.h include/avr/sleep.h
128 --- include/avr/sleep.h 2012-12-12 13:24:34.000000000 +0530
129 +++ include/avr/sleep.h 2012-12-12 13:28:16.000000000 +0530
133 #elif defined(__AVR_AT94K__) \
134 -|| defined(__AVR_ATmega64HVE__)
135 +|| defined(__AVR_ATmega64HVE__) \
136 +|| defined(__AVR_ATmega64HVE2__)
138 #define SLEEP_MODE_IDLE 0
139 #define SLEEP_MODE_PWR_DOWN _BV(SM1)
140 diff -Naurp include/avr/wdt.h include/avr/wdt.h
141 --- include/avr/wdt.h 2012-12-12 13:24:34.000000000 +0530
142 +++ include/avr/wdt.h 2012-12-12 13:29:22.000000000 +0530
143 @@ -300,6 +300,7 @@ __asm__ __volatile__ ( \
144 || defined(__AVR_ATmega649P__) \
145 || defined(__AVR_ATmega64C1__) \
146 || defined(__AVR_ATmega64HVE__) \
147 +|| defined(__AVR_ATmega64HVE2__) \
148 || defined(__AVR_ATmega64M1__) \
149 || defined(__AVR_ATmega8A__) \
150 || defined(__AVR_ATmega88__) \