]> git.pld-linux.org Git - packages/crossavr-libc.git/blame - 400-avr-libc-public-devices.patch
- rel 4
[packages/crossavr-libc.git] / 400-avr-libc-public-devices.patch
CommitLineData
9fe267c2 1diff -Naurp configure.ac configure.ac
69ed15f0
JR
2--- configure.ac 2011-12-29 14:21:55.000000000 +0530
3+++ configure.ac 2012-11-22 19:48:48.000000000 +0530
9fe267c2
PZ
4@@ -461,6 +461,9 @@ AM_CONDITIONAL(HAS_avr25, test "x$HAS_av
5 CHECK_AVR_DEVICE(ata6289)
6 AM_CONDITIONAL(HAS_ata6289, test "x$HAS_ata6289" = "xyes")
7
8+CHECK_AVR_DEVICE(ata5272)
9+AM_CONDITIONAL(HAS_ata5272, test "x$HAS_ata5272" = "xyes")
10+
11 CHECK_AVR_DEVICE(attiny13)
12 AM_CONDITIONAL(HAS_attiny13, test "x$HAS_attiny13" = "xyes")
13
14@@ -512,6 +515,9 @@ AM_CONDITIONAL(HAS_attiny461a, test "x$H
15 CHECK_AVR_DEVICE(attiny48)
16 AM_CONDITIONAL(HAS_attiny48, test "x$HAS_attiny48" = "xyes")
17
18+CHECK_AVR_DEVICE(attiny828)
19+AM_CONDITIONAL(HAS_attiny828, test "x$HAS_attiny828" = "xyes")
20+
21 CHECK_AVR_DEVICE(attiny84)
22 AM_CONDITIONAL(HAS_attiny84, test "x$HAS_attiny84" = "xyes")
23
24@@ -560,6 +566,9 @@ AM_CONDITIONAL(HAS_at90usb82, test "x$HA
25 CHECK_AVR_DEVICE(at90usb162)
26 AM_CONDITIONAL(HAS_at90usb162, test "x$HAS_at90usb162" = "xyes")
27
28+CHECK_AVR_DEVICE(ata5505)
29+AM_CONDITIONAL(HAS_ata5505, test "x$HAS_ata5505" = "xyes")
30+
31 CHECK_AVR_DEVICE(atmega8u2)
32 AM_CONDITIONAL(HAS_atmega8u2, test "x$HAS_atmega8u2" = "xyes")
33
34@@ -572,6 +581,9 @@ AM_CONDITIONAL(HAS_atmega32u2, test "x$H
35 CHECK_AVR_DEVICE(attiny167)
36 AM_CONDITIONAL(HAS_attiny167, test "x$HAS_attiny167" = "xyes")
37
38+CHECK_AVR_DEVICE(attiny1634)
39+AM_CONDITIONAL(HAS_attiny1634, test "x$HAS_attiny1634" = "xyes")
40+
41
42 # avr4
43 AM_CONDITIONAL(HAS_avr4, true)
44@@ -579,12 +591,24 @@ AM_CONDITIONAL(HAS_atmega8, true)
45 AM_CONDITIONAL(HAS_atmega8515, true)
46 AM_CONDITIONAL(HAS_atmega8535, true)
47
48+CHECK_AVR_DEVICE(ata6285)
49+AM_CONDITIONAL(HAS_ata6285, test "x$HAS_ata6285" = "xyes")
50+
51+CHECK_AVR_DEVICE(ata6286)
52+AM_CONDITIONAL(HAS_ata6286, test "x$HAS_ata6286" = "xyes")
53+
54+CHECK_AVR_DEVICE(atmega8a)
55+AM_CONDITIONAL(HAS_atmega8a, test "x$HAS_atmega8a" = "xyes")
56+
57 CHECK_AVR_DEVICE(atmega48)
58 AM_CONDITIONAL(HAS_atmega48, test "x$HAS_atmega48" = "xyes")
59
60 CHECK_AVR_DEVICE(atmega48a)
61 AM_CONDITIONAL(HAS_atmega48a, test "x$HAS_atmega48a" = "xyes")
62
63+CHECK_AVR_DEVICE(atmega48pa)
64+AM_CONDITIONAL(HAS_atmega48pa, test "x$HAS_atmega48pa" = "xyes")
65+
66 CHECK_AVR_DEVICE(atmega48p)
67 AM_CONDITIONAL(HAS_atmega48p, test "x$HAS_atmega48p" = "xyes")
68
69@@ -646,9 +670,18 @@ AM_CONDITIONAL(HAS_at90pwm316, test "x$H
70 CHECK_AVR_DEVICE(at90pwm216)
71 AM_CONDITIONAL(HAS_at90pwm216, test "x$HAS_at90pwm216" = "xyes")
72
73+CHECK_AVR_DEVICE(at90pwm161)
74+AM_CONDITIONAL(HAS_at90pwm161, test "x$HAS_at90pwm161" = "xyes")
75+
76 CHECK_AVR_DEVICE(at94k)
77 AM_CONDITIONAL(HAS_at94k, test "x$HAS_at94k" = "xyes")
78
79+CHECK_AVR_DEVICE(ata5790)
80+AM_CONDITIONAL(HAS_ata5790, test "x$HAS_ata5790" = "xyes")
81+
82+CHECK_AVR_DEVICE(ata5795)
83+AM_CONDITIONAL(HAS_ata5795, test "x$HAS_ata5795" = "xyes")
84+
85 CHECK_AVR_DEVICE(atmega16)
86 AM_CONDITIONAL(HAS_atmega16, test "x$HAS_atmega16" = "xyes")
87
88@@ -670,6 +703,9 @@ AM_CONDITIONAL(HAS_atmega164a, test "x$H
89 CHECK_AVR_DEVICE(atmega164p)
90 AM_CONDITIONAL(HAS_atmega164p, test "x$HAS_atmega164p" = "xyes")
91
92+CHECK_AVR_DEVICE(atmega164pa)
93+AM_CONDITIONAL(HAS_atmega164pa, test "x$HAS_atmega164pa" = "xyes")
94+
95 CHECK_AVR_DEVICE(atmega165)
96 AM_CONDITIONAL(HAS_atmega165, test "x$HAS_atmega165" = "xyes")
97
98@@ -679,6 +715,9 @@ AM_CONDITIONAL(HAS_atmega165a, test "x$H
99 CHECK_AVR_DEVICE(atmega165p)
100 AM_CONDITIONAL(HAS_atmega165p, test "x$HAS_atmega165p" = "xyes")
101
102+CHECK_AVR_DEVICE(atmega165pa)
103+AM_CONDITIONAL(HAS_atmega165pa, test "x$HAS_atmega165pa" = "xyes")
104+
105 CHECK_AVR_DEVICE(atmega168)
106 AM_CONDITIONAL(HAS_atmega168, test "x$HAS_atmega168" = "xyes")
107
108@@ -688,6 +727,9 @@ AM_CONDITIONAL(HAS_atmega168a, test "x$H
109 CHECK_AVR_DEVICE(atmega168p)
110 AM_CONDITIONAL(HAS_atmega168p, test "x$HAS_atmega168p" = "xyes")
111
112+CHECK_AVR_DEVICE(atmega168pa)
113+AM_CONDITIONAL(HAS_atmega168pa, test "x$HAS_atmega168pa" = "xyes")
114+
115 CHECK_AVR_DEVICE(atmega169)
116 AM_CONDITIONAL(HAS_atmega169, test "x$HAS_atmega169" = "xyes")
117
118@@ -721,6 +763,9 @@ AM_CONDITIONAL(HAS_atmega16u4, test "x$H
119 CHECK_AVR_DEVICE(atmega32)
120 AM_CONDITIONAL(HAS_atmega32, test "x$HAS_atmega32" = "xyes")
121
122+CHECK_AVR_DEVICE(atmega32a)
123+AM_CONDITIONAL(HAS_atmega32a, test "x$HAS_atmega32a" = "xyes")
124+
125 CHECK_AVR_DEVICE(atmega323)
126 AM_CONDITIONAL(HAS_atmega323, test "x$HAS_atmega323" = "xyes")
127
128@@ -742,6 +787,9 @@ AM_CONDITIONAL(HAS_atmega325a, test "x$H
129 CHECK_AVR_DEVICE(atmega325p)
130 AM_CONDITIONAL(HAS_atmega325p, test "x$HAS_atmega325p" = "xyes")
131
132+CHECK_AVR_DEVICE(atmega325pa)
133+AM_CONDITIONAL(HAS_atmega325pa, test "x$HAS_atmega325pa" = "xyes")
134+
135 CHECK_AVR_DEVICE(atmega3250)
136 AM_CONDITIONAL(HAS_atmega3250, test "x$HAS_atmega3250" = "xyes")
137
138@@ -751,6 +799,9 @@ AM_CONDITIONAL(HAS_atmega3250a, test "x$
139 CHECK_AVR_DEVICE(atmega3250p)
140 AM_CONDITIONAL(HAS_atmega3250p, test "x$HAS_atmega3250p" = "xyes")
141
142+CHECK_AVR_DEVICE(atmega3250pa)
143+AM_CONDITIONAL(HAS_atmega3250pa, test "x$HAS_atmega3250pa" = "xyes")
144+
145 CHECK_AVR_DEVICE(atmega328)
146 AM_CONDITIONAL(HAS_atmega328, test "x$HAS_atmega328" = "xyes")
147
148@@ -778,6 +829,9 @@ AM_CONDITIONAL(HAS_atmega3290a, test "x$
149 CHECK_AVR_DEVICE(atmega3290p)
150 AM_CONDITIONAL(HAS_atmega3290p, test "x$HAS_atmega3290p" = "xyes")
151
152+CHECK_AVR_DEVICE(atmega3290pa)
153+AM_CONDITIONAL(HAS_atmega3290pa, test "x$HAS_atmega3290pa" = "xyes")
154+
155 CHECK_AVR_DEVICE(atmega32c1)
156 AM_CONDITIONAL(HAS_atmega32c1, test "x$HAS_atmega32c1" = "xyes")
157
158@@ -802,6 +856,9 @@ AM_CONDITIONAL(HAS_atmega406, test "x$HA
159 CHECK_AVR_DEVICE(atmega64)
160 AM_CONDITIONAL(HAS_atmega64, test "x$HAS_atmega64" = "xyes")
161
162+CHECK_AVR_DEVICE(atmega64a)
163+AM_CONDITIONAL(HAS_atmega64a, test "x$HAS_atmega64a" = "xyes")
164+
165 CHECK_AVR_DEVICE(atmega640)
166 AM_CONDITIONAL(HAS_atmega640, test "x$HAS_atmega640" = "xyes")
167
168@@ -876,12 +933,18 @@ AM_CONDITIONAL(HAS_avr51, test "x$HAS_av
169
170 AM_CONDITIONAL(HAS_atmega128, true)
171
172+CHECK_AVR_DEVICE(atmega128a)
173+AM_CONDITIONAL(HAS_atmega128a, test "x$HAS_atmega128a" = "xyes")
174+
175 CHECK_AVR_DEVICE(atmega1280)
176 AM_CONDITIONAL(HAS_atmega1280, test "x$HAS_atmega1280" = "xyes")
177
178 CHECK_AVR_DEVICE(atmega1281)
179 AM_CONDITIONAL(HAS_atmega1281, test "x$HAS_atmega1281" = "xyes")
180
181+CHECK_AVR_DEVICE(atmega1284)
182+AM_CONDITIONAL(HAS_atmega1284, test "x$HAS_atmega1284" = "xyes")
183+
184 CHECK_AVR_DEVICE(atmega1284p)
185 AM_CONDITIONAL(HAS_atmega1284p, test "x$HAS_atmega1284p" = "xyes")
186
187@@ -913,12 +976,24 @@ AM_CONDITIONAL(HAS_avrxmega2, test "x$HA
188 CHECK_AVR_DEVICE(atxmega16a4)
189 AM_CONDITIONAL(HAS_atxmega16a4, test "x$HAS_atxmega16a4" = "xyes")
190
191+CHECK_AVR_DEVICE(atxmega16a4u)
192+AM_CONDITIONAL(HAS_atxmega16a4u, test "x$HAS_atxmega16a4u" = "xyes")
193+
194+CHECK_AVR_DEVICE(atxmega16c4)
195+AM_CONDITIONAL(HAS_atxmega16c4, test "x$HAS_atxmega16c4" = "xyes")
196+
197 CHECK_AVR_DEVICE(atxmega16d4)
198 AM_CONDITIONAL(HAS_atxmega16d4, test "x$HAS_atxmega16d4" = "xyes")
199
200 CHECK_AVR_DEVICE(atxmega32a4)
201 AM_CONDITIONAL(HAS_atxmega32a4, test "x$HAS_atxmega32a4" = "xyes")
202
203+CHECK_AVR_DEVICE(atxmega32a4u)
204+AM_CONDITIONAL(HAS_atxmega32a4u, test "x$HAS_atxmega32a4u" = "xyes")
205+
206+CHECK_AVR_DEVICE(atxmega32c4)
207+AM_CONDITIONAL(HAS_atxmega32c4, test "x$HAS_atxmega32c4" = "xyes")
208+
209 CHECK_AVR_DEVICE(atxmega32d4)
210 AM_CONDITIONAL(HAS_atxmega32d4, test "x$HAS_atxmega32d4" = "xyes")
211
212@@ -930,9 +1005,27 @@ AM_CONDITIONAL(HAS_avrxmega4, test "x$HA
213 CHECK_AVR_DEVICE(atxmega64a3)
214 AM_CONDITIONAL(HAS_atxmega64a3, test "x$HAS_atxmega64a3" = "xyes")
215
216+CHECK_AVR_DEVICE(atxmega64a3u)
217+AM_CONDITIONAL(HAS_atxmega64a3u, test "x$HAS_atxmega64a3u" = "xyes")
218+
219+CHECK_AVR_DEVICE(atxmega64a4u)
220+AM_CONDITIONAL(HAS_atxmega64a4u, test "x$HAS_atxmega64a4u" = "xyes")
221+
222+CHECK_AVR_DEVICE(atxmega64b1)
223+AM_CONDITIONAL(HAS_atxmega64b1, test "x$HAS_atxmega64b1" = "xyes")
224+
225+CHECK_AVR_DEVICE(atxmega64b3)
226+AM_CONDITIONAL(HAS_atxmega64b3, test "x$HAS_atxmega64b3" = "xyes")
227+
228+CHECK_AVR_DEVICE(atxmega64c3)
229+AM_CONDITIONAL(HAS_atxmega64c3, test "x$HAS_atxmega64c3" = "xyes")
230+
231 CHECK_AVR_DEVICE(atxmega64d3)
232 AM_CONDITIONAL(HAS_atxmega64d3, test "x$HAS_atxmega64d3" = "xyes")
233
234+CHECK_AVR_DEVICE(atxmega64d4)
235+AM_CONDITIONAL(HAS_atxmega64d4, test "x$HAS_atxmega64d4" = "xyes")
236+
237
238 # avrxmega5
239 CHECK_AVR_DEVICE(avrxmega5)
240@@ -952,24 +1045,59 @@ AM_CONDITIONAL(HAS_avrxmega6, test "x$HA
241 CHECK_AVR_DEVICE(atxmega128a3)
242 AM_CONDITIONAL(HAS_atxmega128a3, test "x$HAS_atxmega128a3" = "xyes")
243
244+CHECK_AVR_DEVICE(atxmega128a3u)
245+AM_CONDITIONAL(HAS_atxmega128a3u, test "x$HAS_atxmega128a3u" = "xyes")
246+
247+CHECK_AVR_DEVICE(atxmega128b1)
248+AM_CONDITIONAL(HAS_atxmega128b1, test "x$HAS_atxmega128b1" = "xyes")
249+
250+CHECK_AVR_DEVICE(atxmega128b3)
251+AM_CONDITIONAL(HAS_atxmega128b3, test "x$HAS_atxmega128b3" = "xyes")
252+
253+CHECK_AVR_DEVICE(atxmega128c3)
254+AM_CONDITIONAL(HAS_atxmega128c3, test "x$HAS_atxmega128c3" = "xyes")
255+
256 CHECK_AVR_DEVICE(atxmega128d3)
257 AM_CONDITIONAL(HAS_atxmega128d3, test "x$HAS_atxmega128d3" = "xyes")
258
259+CHECK_AVR_DEVICE(atxmega128d4)
260+AM_CONDITIONAL(HAS_atxmega128d4, test "x$HAS_atxmega128d4" = "xyes")
261+
262 CHECK_AVR_DEVICE(atxmega192a3)
263 AM_CONDITIONAL(HAS_atxmega192a3, test "x$HAS_atxmega192a3" = "xyes")
264
265+CHECK_AVR_DEVICE(atxmega192a3u)
266+AM_CONDITIONAL(HAS_atxmega192a3u, test "x$HAS_atxmega192a3u" = "xyes")
267+
268+CHECK_AVR_DEVICE(atxmega192c3)
269+AM_CONDITIONAL(HAS_atxmega192c3, test "x$HAS_atxmega192c3" = "xyes")
270+
271 CHECK_AVR_DEVICE(atxmega192d3)
272 AM_CONDITIONAL(HAS_atxmega192d3, test "x$HAS_atxmega192d3" = "xyes")
273
274 CHECK_AVR_DEVICE(atxmega256a3)
275 AM_CONDITIONAL(HAS_atxmega256a3, test "x$HAS_atxmega256a3" = "xyes")
276
277+CHECK_AVR_DEVICE(atxmega256a3u)
278+AM_CONDITIONAL(HAS_atxmega256a3u, test "x$HAS_atxmega256a3u" = "xyes")
279+
280 CHECK_AVR_DEVICE(atxmega256a3b)
281 AM_CONDITIONAL(HAS_atxmega256a3b, test "x$HAS_atxmega256a3b" = "xyes")
282
283+CHECK_AVR_DEVICE(atxmega256a3bu)
284+AM_CONDITIONAL(HAS_atxmega256a3bu, test "x$HAS_atxmega256a3bu" = "xyes")
285+
286+CHECK_AVR_DEVICE(atxmega256c3)
287+AM_CONDITIONAL(HAS_atxmega256c3, test "x$HAS_atxmega256c3" = "xyes")
288+
289 CHECK_AVR_DEVICE(atxmega256d3)
290 AM_CONDITIONAL(HAS_atxmega256d3, test "x$HAS_atxmega256d3" = "xyes")
291
292+CHECK_AVR_DEVICE(atxmega384c3)
293+AM_CONDITIONAL(HAS_atxmega384c3, test "x$HAS_atxmega384c3" = "xyes")
294+
295+CHECK_AVR_DEVICE(atxmega384d3)
296+AM_CONDITIONAL(HAS_atxmega384d3, test "x$HAS_atxmega384d3" = "xyes")
297
298 # avrxmega7
299 CHECK_AVR_DEVICE(avrxmega7)
300@@ -981,6 +1109,9 @@ AM_CONDITIONAL(HAS_atxmega128a1, test "x
301 CHECK_AVR_DEVICE(atxmega128a1u)
302 AM_CONDITIONAL(HAS_atxmega128a1u, test "x$HAS_atxmega128a1u" = "xyes")
303
304+CHECK_AVR_DEVICE(atxmega128a4u)
305+AM_CONDITIONAL(HAS_atxmega128a4u, test "x$HAS_atxmega128a4u" = "xyes")
306+
307
308 # avrtiny10
309 CHECK_AVR_DEVICE(avrtiny10)
310@@ -1076,6 +1207,7 @@ AC_CONFIG_FILES([
311 avr/lib/avr25/Makefile
312 avr/lib/avr25/at86rf401/Makefile
313 avr/lib/avr25/ata6289/Makefile
314+ avr/lib/avr25/ata5272/Makefile
315 avr/lib/avr25/attiny13/Makefile
316 avr/lib/avr25/attiny13a/Makefile
317 avr/lib/avr25/attiny2313/Makefile
318@@ -1093,6 +1225,7 @@ AC_CONFIG_FILES([
319 avr/lib/avr25/attiny461/Makefile
320 avr/lib/avr25/attiny461a/Makefile
321 avr/lib/avr25/attiny48/Makefile
322+ avr/lib/avr25/attiny828/Makefile
323 avr/lib/avr25/attiny84/Makefile
324 avr/lib/avr25/attiny84a/Makefile
325 avr/lib/avr25/attiny85/Makefile
326@@ -1125,19 +1258,25 @@ AC_CONFIG_FILES([
327 avr/lib/avr35/Makefile
328 avr/lib/avr35/at90usb82/Makefile
329 avr/lib/avr35/at90usb162/Makefile
330+ avr/lib/avr35/ata5505/Makefile
331 avr/lib/avr35/atmega8u2/Makefile
332 avr/lib/avr35/atmega16u2/Makefile
333 avr/lib/avr35/atmega32u2/Makefile
334 avr/lib/avr35/attiny167/Makefile
335+ avr/lib/avr35/attiny1634/Makefile
336 ])
337
338 #avr4
339 AC_CONFIG_FILES([
340 avr/lib/avr4/Makefile
341+ avr/lib/avr4/ata6285/Makefile
342+ avr/lib/avr4/ata6286/Makefile
343 avr/lib/avr4/atmega48/Makefile
344 avr/lib/avr4/atmega48a/Makefile
345+ avr/lib/avr4/atmega48pa/Makefile
346 avr/lib/avr4/atmega48p/Makefile
347 avr/lib/avr4/atmega8/Makefile
348+ avr/lib/avr4/atmega8a/Makefile
349 avr/lib/avr4/atmega88/Makefile
350 avr/lib/avr4/atmega88a/Makefile
351 avr/lib/avr4/atmega88p/Makefile
352@@ -1161,12 +1300,15 @@ AC_CONFIG_FILES([
353 avr/lib/avr5/at90can128/Makefile
354 avr/lib/avr5/at90pwm216/Makefile
355 avr/lib/avr5/at90pwm316/Makefile
356+ avr/lib/avr5/at90pwm161/Makefile
357 avr/lib/avr5/at90scr100/Makefile
358 avr/lib/avr5/at90usb646/Makefile
359 avr/lib/avr5/at90usb647/Makefile
360 avr/lib/avr5/at90usb1286/Makefile
361 avr/lib/avr5/at90usb1287/Makefile
362 avr/lib/avr5/at94k/Makefile
363+ avr/lib/avr5/ata5790/Makefile
364+ avr/lib/avr5/ata5795/Makefile
365 avr/lib/avr5/atmega16/Makefile
366 avr/lib/avr5/atmega16a/Makefile
367 avr/lib/avr5/atmega161/Makefile
368@@ -1174,12 +1316,15 @@ AC_CONFIG_FILES([
369 avr/lib/avr5/atmega163/Makefile
370 avr/lib/avr5/atmega164a/Makefile
371 avr/lib/avr5/atmega164p/Makefile
372+ avr/lib/avr5/atmega164pa/Makefile
373 avr/lib/avr5/atmega165/Makefile
374 avr/lib/avr5/atmega165a/Makefile
375 avr/lib/avr5/atmega165p/Makefile
376+ avr/lib/avr5/atmega165pa/Makefile
377 avr/lib/avr5/atmega168/Makefile
378 avr/lib/avr5/atmega168a/Makefile
379 avr/lib/avr5/atmega168p/Makefile
380+ avr/lib/avr5/atmega168pa/Makefile
381 avr/lib/avr5/atmega169/Makefile
382 avr/lib/avr5/atmega169a/Makefile
383 avr/lib/avr5/atmega169p/Makefile
384@@ -1191,6 +1336,7 @@ AC_CONFIG_FILES([
385 avr/lib/avr5/atmega16m1/Makefile
386 avr/lib/avr5/atmega16u4/Makefile
387 avr/lib/avr5/atmega32/Makefile
388+ avr/lib/avr5/atmega32a/Makefile
389 avr/lib/avr5/atmega323/Makefile
390 avr/lib/avr5/atmega324a/Makefile
391 avr/lib/avr5/atmega324p/Makefile
392@@ -1198,9 +1344,11 @@ AC_CONFIG_FILES([
393 avr/lib/avr5/atmega325/Makefile
394 avr/lib/avr5/atmega325a/Makefile
395 avr/lib/avr5/atmega325p/Makefile
396+ avr/lib/avr5/atmega325pa/Makefile
397 avr/lib/avr5/atmega3250/Makefile
398 avr/lib/avr5/atmega3250a/Makefile
399 avr/lib/avr5/atmega3250p/Makefile
400+ avr/lib/avr5/atmega3250pa/Makefile
401 avr/lib/avr5/atmega328/Makefile
402 avr/lib/avr5/atmega328p/Makefile
403 avr/lib/avr5/atmega329/Makefile
404@@ -1210,6 +1358,7 @@ AC_CONFIG_FILES([
405 avr/lib/avr5/atmega3290/Makefile
406 avr/lib/avr5/atmega3290a/Makefile
407 avr/lib/avr5/atmega3290p/Makefile
408+ avr/lib/avr5/atmega3290pa/Makefile
409 avr/lib/avr5/atmega32c1/Makefile
410 avr/lib/avr5/atmega32hvb/Makefile
411 avr/lib/avr5/atmega32hvbrevb/Makefile
412@@ -1218,6 +1367,7 @@ AC_CONFIG_FILES([
413 avr/lib/avr5/atmega32u6/Makefile
414 avr/lib/avr5/atmega406/Makefile
415 avr/lib/avr5/atmega64/Makefile
416+ avr/lib/avr5/atmega64a/Makefile
417 avr/lib/avr5/atmega640/Makefile
418 avr/lib/avr5/atmega644/Makefile
419 avr/lib/avr5/atmega644a/Makefile
420@@ -1250,8 +1400,10 @@ AC_CONFIG_FILES([
421 AC_CONFIG_FILES([
422 avr/lib/avr51/Makefile
423 avr/lib/avr51/atmega128/Makefile
424+ avr/lib/avr51/atmega128a/Makefile
425 avr/lib/avr51/atmega1280/Makefile
426 avr/lib/avr51/atmega1281/Makefile
427+ avr/lib/avr51/atmega1284/Makefile
428 avr/lib/avr51/atmega1284p/Makefile
429 avr/lib/avr51/atmega128rfa1/Makefile
430 avr/lib/avr51/at90can128/Makefile
431@@ -1270,8 +1422,12 @@ AC_CONFIG_FILES([
432 AC_CONFIG_FILES([
433 avr/lib/avrxmega2/Makefile
434 avr/lib/avrxmega2/atxmega16a4/Makefile
435+ avr/lib/avrxmega2/atxmega16a4u/Makefile
436+ avr/lib/avrxmega2/atxmega16c4/Makefile
437 avr/lib/avrxmega2/atxmega16d4/Makefile
438 avr/lib/avrxmega2/atxmega32a4/Makefile
439+ avr/lib/avrxmega2/atxmega32a4u/Makefile
440+ avr/lib/avrxmega2/atxmega32c4/Makefile
441 avr/lib/avrxmega2/atxmega32d4/Makefile
442 ])
443
444@@ -1279,7 +1435,13 @@ AC_CONFIG_FILES([
445 AC_CONFIG_FILES([
446 avr/lib/avrxmega4/Makefile
447 avr/lib/avrxmega4/atxmega64a3/Makefile
448+ avr/lib/avrxmega4/atxmega64a3u/Makefile
449+ avr/lib/avrxmega4/atxmega64a4u/Makefile
450+ avr/lib/avrxmega4/atxmega64b1/Makefile
451+ avr/lib/avrxmega4/atxmega64b3/Makefile
452+ avr/lib/avrxmega4/atxmega64c3/Makefile
453 avr/lib/avrxmega4/atxmega64d3/Makefile
454+ avr/lib/avrxmega4/atxmega64d4/Makefile
455 ])
456
457 # avrxmega5
458@@ -1293,12 +1455,24 @@ AC_CONFIG_FILES([
459 AC_CONFIG_FILES([
460 avr/lib/avrxmega6/Makefile
461 avr/lib/avrxmega6/atxmega128a3/Makefile
462+ avr/lib/avrxmega6/atxmega128a3u/Makefile
463+ avr/lib/avrxmega6/atxmega128b1/Makefile
464+ avr/lib/avrxmega6/atxmega128b3/Makefile
465+ avr/lib/avrxmega6/atxmega128c3/Makefile
466 avr/lib/avrxmega6/atxmega128d3/Makefile
467+ avr/lib/avrxmega6/atxmega128d4/Makefile
468 avr/lib/avrxmega6/atxmega192a3/Makefile
469+ avr/lib/avrxmega6/atxmega192a3u/Makefile
470+ avr/lib/avrxmega6/atxmega192c3/Makefile
471 avr/lib/avrxmega6/atxmega192d3/Makefile
472 avr/lib/avrxmega6/atxmega256a3/Makefile
473+ avr/lib/avrxmega6/atxmega256a3u/Makefile
474 avr/lib/avrxmega6/atxmega256a3b/Makefile
475+ avr/lib/avrxmega6/atxmega256a3bu/Makefile
476+ avr/lib/avrxmega6/atxmega256c3/Makefile
477 avr/lib/avrxmega6/atxmega256d3/Makefile
478+ avr/lib/avrxmega6/atxmega384c3/Makefile
479+ avr/lib/avrxmega6/atxmega384d3/Makefile
480 ])
481
482 # avrxmega7
483@@ -1306,6 +1480,7 @@ AC_CONFIG_FILES([
484 avr/lib/avrxmega7/Makefile
485 avr/lib/avrxmega7/atxmega128a1/Makefile
486 avr/lib/avrxmega7/atxmega128a1u/Makefile
487+ avr/lib/avrxmega7/atxmega128a4u/Makefile
488 ])
489
490
491diff -Naurp devtools/gen-avr-lib-tree.sh devtools/gen-avr-lib-tree.sh
69ed15f0
JR
492--- devtools/gen-avr-lib-tree.sh 2011-12-29 14:21:50.000000000 +0530
493+++ devtools/gen-avr-lib-tree.sh 2012-11-22 19:48:48.000000000 +0530
9fe267c2
PZ
494@@ -84,6 +84,7 @@ attiny861:crttn861.o:${DEV_DEFS}:${CFLAG
495 AVR25_DEV_INFO="\
496 at86rf401:crt86401.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
497 ata6289:crta6289.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
498+ata5272:crta5272.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
499 attiny13:crttn13.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
500 attiny13a:crttn13a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
501 attiny2313:crttn2313.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
502@@ -101,6 +102,7 @@ attiny45:crttn45.o:${DEV_DEFS}:${CFLAGS_
503 attiny461:crttn461.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
504 attiny461a:crttn461a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
505 attiny48:crttn48.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
506+attiny828:crttn828.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
507 attiny84:crttn84.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
508 attiny84a:crttn84a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
509 attiny85:crttn85.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
510@@ -127,17 +129,23 @@ at43usb320:crt43320.o:${DEV_DEFS}:${CFLA
511 AVR35_DEV_INFO="\
512 at90usb82:crtusb82.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
513 at90usb162:crtusb162.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
514+ata5505:crta5505.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
515 atmega8u2:crtm8u2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
516 atmega16u2:crtm16u2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
517 atmega32u2:crtm32u2.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
518-attiny167:crttn167.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
519+attiny167:crttn167.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
520+attiny1634:crttn1634.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
521 "
522
523 AVR4_DEV_INFO="\
524+ata6285:crta6285.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
525+ata6286:crta6286.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
526 atmega48:crtm48.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
527 atmega48a:crtm48a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
528+atmega48pa:crtm48pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
529 atmega48p:crtm48p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
530 atmega8:crtm8.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
531+atmega8a:crtm8a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
532 atmega88:crtm88.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
533 atmega88a:crtm88a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
534 atmega88p:crtm88p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
535@@ -159,12 +167,15 @@ at90can64:crtcan64.o:${DEV_DEFS}:${CFLAG
536 at90can128:crtcan128.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
537 at90pwm216:crt90pwm216.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
538 at90pwm316:crt90pwm316.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
539+at90pwm161:crt90pwm161.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
540 at90scr100:crt90scr100.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
541 at90usb646:crtusb646.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
542 at90usb647:crtusb647.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
543 at90usb1286:crtusb1286.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
544 at90usb1287:crtusb1287.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
545 at94k:crtat94k.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
546+ata5790:crta5790.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
547+ata5795:crta5795.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
548 atmega16:crtm16.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
549 atmega16a:crtm16a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
550 atmega161:crtm161.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
551@@ -172,12 +183,15 @@ atmega162:crtm162.o:${DEV_DEFS}:${CFLAGS
552 atmega163:crtm163.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
553 atmega164a:crtm164a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
554 atmega164p:crtm164p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
555+atmega164pa:crtm164pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
556 atmega165:crtm165.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
557 atmega165a:crtm165a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
558 atmega165p:crtm165p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
559+atmega165pa:crtm165pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
560 atmega168:crtm168.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
561 atmega168a:crtm168a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
562 atmega168p:crtm168p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
563+atmega168pa:crtm168pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
564 atmega169:crtm169.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
565 atmega169a:crtm169a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
566 atmega169p:crtm169p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
567@@ -189,6 +203,7 @@ atmega16hvbrevb:crtm16hvbrevb.o:${DEV_DE
568 atmega16m1:crtm16m1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
569 atmega16u4:crtm16u4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
570 atmega32:crtm32.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
571+atmega32a:crtm32a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
572 atmega323:crtm323.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
573 atmega324a:crtm324a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
574 atmega324p:crtm324p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
575@@ -196,9 +211,11 @@ atmega324pa:crtm324pa.o:${DEV_DEFS}:${CF
576 atmega325:crtm325.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
577 atmega325a:crtm325a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
578 atmega325p:crtm325p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
579+atmega325pa:crtm325pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
580 atmega3250:crtm3250.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
581 atmega3250a:crtm3250a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
582 atmega3250p:crtm3250p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
583+atmega3250pa:crtm3250pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
584 atmega328:crtm328.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
585 atmega328p:crtm328p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
586 atmega329:crtm329.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
587@@ -208,6 +225,7 @@ atmega329pa:crtm329pa.o:${DEV_DEFS}:${CF
588 atmega3290:crtm3290.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
589 atmega3290a:crtm3290a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
590 atmega3290p:crtm3290p.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
591+atmega3290pa:crtm3290pa.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
592 atmega32c1:crtm32c1.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
593 atmega32hvb:crtm32hvb.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
594 atmega32hvbrevb:crtm32hvbrevb.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
595@@ -216,6 +234,7 @@ atmega32u4:crtm32u4.o:${DEV_DEFS}:${CFLA
596 atmega32u6:crtm32u6.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
597 atmega406:crtm406.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
598 atmega64:crtm64.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
599+atmega64a:crtm64a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
600 atmega640:crtm640.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
601 atmega644:crtm644.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
602 atmega644a:crtm644a.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
603@@ -246,8 +265,10 @@ m3000:crtm3000.o:${DEV_DEFS}:${CFLAGS_SP
604
605 AVR51_DEV_INFO="\
606 atmega128:crtm128.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
607+atmega128a:crtm128a.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
608 atmega1280:crtm1280.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
609 atmega1281:crtm1281.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
610+atmega1284:crtm1284.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
611 atmega1284p:crtm1284p.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
612 atmega128rfa1:crtm128rfa1.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
613 at90can128:crtcan128.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
614@@ -262,14 +283,24 @@ atmega2561:crtm2561.o:${DEV_DEFS}:${CFLA
615
616 AVRXMEGA2_DEV_INFO="\
617 atxmega16a4:crtx16a4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
618+atxmega16a4u:crtx16a4u.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
619+atxmega16c4:crtx16c4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
620 atxmega16d4:crtx16d4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
621 atxmega32a4:crtx32a4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
622+atxmega32a4u:crtx32a4u.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
623+atxmega32c4:crtx32c4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\
624 atxmega32d4:crtx32d4.o:${DEV_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS}\
625 "
626
627 AVRXMEGA4_DEV_INFO="\
628 atxmega64a3:crtx64a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
629-atxmega64d3:crtx64d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
630+atxmega64a3u:crtx64a3u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
631+atxmega64a4u:crtx64a4u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
632+atxmega64b1:crtx64b1.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
633+atxmega64b3:crtx64b3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
634+atxmega64c3:crtx64c3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
635+atxmega64d3:crtx64d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
636+atxmega64d4:crtx64d4.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
637 "
638
639 AVRXMEGA5_DEV_INFO="\
640@@ -279,17 +310,30 @@ atxmega64a1u:crtx64a1u.o:${DEV_DEFS}:${C
641
642 AVRXMEGA6_DEV_INFO="\
643 atxmega128a3:crtx128a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
644+atxmega128a3u:crtx128a3u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
645+atxmega128b1:crtx128b1.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
646+atxmega128b3:crtx128b3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
647+atxmega128c3:crtx128c3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
648 atxmega128d3:crtx128d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
649+atxmega128d4:crtx128d4.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
650 atxmega192a3:crtx192a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
651+atxmega192a3u:crtx192a3u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
652+atxmega192c3:crtx192c3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
653 atxmega192d3:crtx192d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
654 atxmega256a3:crtx256a3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
655+atxmega256a3u:crtx256a3u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
656 atxmega256a3b:crtx256a3b.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
657-atxmega256d3:crtx256d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
658+atxmega256a3bu:crtx256a3bu.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
659+atxmega256c3:crtx256c3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
660+atxmega256d3:crtx256d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
661+atxmega384c3:crtx384c3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
662+atxmega384d3:crtx384d3.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
663 "
664
665 AVRXMEGA7_DEV_INFO="\
666 atxmega128a1:crtx128a1.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
667-atxmega128a1u:crtx128a1u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
668+atxmega128a1u:crtx128a1u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS};\
669+atxmega128a4u:crtx128a4u.o:${DEV_DEFS}:${CFLAGS_BIG_MEMORY}:${DEV_ASFLAGS}\
670 "
671
672 AVRTINY10_DEV_INFO="\
673diff -Naurp doc/api/main_page.dox doc/api/main_page.dox
69ed15f0
JR
674--- doc/api/main_page.dox 2011-12-29 14:21:53.000000000 +0530
675+++ doc/api/main_page.dox 2012-11-22 19:48:48.000000000 +0530
9fe267c2
PZ
676@@ -94,8 +94,10 @@ compile-time.
677
678 - atmega103
679 - atmega128
680+- atmega128a
681 - atmega1280
682 - atmega1281
683+- atmega1284
684 - atmega1284p
685 - atmega16
686 - atmega161
687@@ -103,16 +105,20 @@ compile-time.
688 - atmega163
689 - atmega164a
690 - atmega164p
691+- atmega164pa
692 - atmega165
693 - atmega165a
694 - atmega165p
695+- atmega165pa
696 - atmega168
697 - atmega168a
698 - atmega168p
699+- atmega168pa
700 - atmega16a
701 - atmega2560
702 - atmega2561
703 - atmega32
704+- atmega32a
705 - atmega323
706 - atmega324a
707 - atmega324p
708@@ -120,15 +126,19 @@ compile-time.
709 - atmega325
710 - atmega325a
711 - atmega325p
712+- atmega325pa
713 - atmega3250
714 - atmega3250a
715 - atmega3250p
716+- atmega3250pa
717 - atmega328
718 - atmega328p
719 - atmega48
720 - atmega48a
721+- atmega48pa
722 - atmega48p
723 - atmega64
724+- atmega64a
725 - atmega640
726 - atmega644
727 - atmega644a
728@@ -141,6 +151,7 @@ compile-time.
729 - atmega6450a
730 - atmega6450p
731 - atmega8
732+- atmega8a
733 - atmega88
734 - atmega88a
735 - atmega88p
736@@ -178,6 +189,7 @@ compile-time.
737 - attiny461
738 - attiny461a
739 - attiny48
740+- attiny828
741 - attiny84
742 - attiny84a
743 - attiny85
744@@ -185,6 +197,7 @@ compile-time.
745 - attiny861a
746 - attiny87
747 - attiny88
748+- attiny1634
749
750 \par Automotive AVR Devices:
751
752@@ -194,6 +207,10 @@ compile-time.
753 - atmega64c1
754 - atmega64m1
755 - attiny167
756+- ata5505
757+- ata5272
758+- ata5790
759+- ata5795
760
761 \par CAN AVR Devices:
762
763@@ -214,6 +231,7 @@ compile-time.
764 - atmega3290
765 - atmega3290a
766 - atmega3290p
767+- atmega3290pa
768 - atmega649
769 - atmega649a
770 - atmega6490
771@@ -230,6 +248,7 @@ compile-time.
772 - at90pwm3
773 - at90pwm3b
774 - at90pwm316
775+- at90pwm161
776 - at90pwm81
777
778 \par Smart Battery AVR Devices:
779@@ -262,22 +281,45 @@ compile-time.
780 \par XMEGA Devices:
781
782 - atxmega16a4
783+- atxmega16a4u
784+- atxmega16c4
785 - atxmega16d4
786 - atxmega32a4
787+- atxmega32a4u
788+- atxmega32c4
789 - atxmega32d4
790 - atxmega64a1
791 - atxmega64a1u
792 - atxmega64a3
793+- atxmega64a3u
794+- atxmega64a4u
795+- atxmega64b1
796+- atxmega64b3
797+- atxmega64c3
798 - atxmega64d3
799+- atxmega64d4
800 - atxmega128a1
801 - atxmega128a1u
802 - atxmega128a3
803+- atxmega128a3u
804+- atxmega128a4u
805+- atxmega128b1
806+- atxmega128b3
807+- atxmega128c3
808 - atxmega128d3
809+- atxmega128d4
810 - atxmega192a3
811+- atxmega192a3u
812+- atxmega192c3
813 - atxmega192d3
814 - atxmega256a3
815+- atxmega256a3u
816 - atxmega256a3b
817+- atxmega256a3bu
818+- atxmega256c3
819 - atxmega256d3
820+- atxmega384c3
821+- atxmega384d3
822
823 \par Miscellaneous Devices:
824
825@@ -287,6 +329,8 @@ compile-time.
826 - at43usb355
827 - at86rf401
828 - at90scr100
829+- ata6285
830+- ata6286
831 - ata6289
832 - m3000 \ref supp_dev_footnote_four "[4]"
833
834diff -Naurp doc/api/using-tools.dox doc/api/using-tools.dox
69ed15f0
JR
835--- doc/api/using-tools.dox 2011-12-29 14:21:53.000000000 +0530
836+++ doc/api/using-tools.dox 2012-11-22 19:48:48.000000000 +0530
9fe267c2
PZ
837@@ -231,6 +231,7 @@ AVR will be defined as well when using t
838
839 <tr><td>avr2/avr25&nbsp;[1]</td><td>at86rf401</td><td>__AVR_AT86RF401__</td></tr>
840 <tr><td>avr2/avr25&nbsp;[1]</td><td>ata6289</td><td>__AVR_ATA6289__</td></tr>
841+ <tr><td>avr2/avr25&nbsp;[1]</td><td>ata5272</td><td>__AVR_ATA5272__</td></tr>
842 <tr><td>avr2/avr25&nbsp;[1]</td><td>attiny13</td><td>__AVR_ATtiny13__</td></tr>
843 <tr><td>avr2/avr25&nbsp;[1]</td><td>attiny13a</td><td>__AVR_ATtiny13A__</td></tr>
844 <tr><td>avr2/avr25&nbsp;[1]</td><td>attiny2313</td><td>__AVR_ATtiny2313__</td></tr>
845@@ -248,6 +249,7 @@ AVR will be defined as well when using t
846 <tr><td>avr2/avr25&nbsp;[1]</td><td>attiny461</td><td>__AVR_ATtiny461__</td></tr>
847 <tr><td>avr2/avr25&nbsp;[1]</td><td>attiny461a</td><td>__AVR_ATtiny461A__</td></tr>
848 <tr><td>avr2/avr25&nbsp;[1]</td><td>attiny48</td><td>__AVR_ATtiny48__</td></tr>
849+ <tr><td>avr2/avr25&nbsp;[1]</td><td>attiny828</td><td>__AVR_ATtiny828__</td></tr>
850 <tr><td>avr2/avr25&nbsp;[1]</td><td>attiny84</td><td>__AVR_ATtiny84__</td></tr>
851 <tr><td>avr2/avr25&nbsp;[1]</td><td>attiny84a</td><td>__AVR_ATtiny84A__</td></tr>
852 <tr><td>avr2/avr25&nbsp;[1]</td><td>attiny85</td><td>__AVR_ATtiny85__</td></tr>
853@@ -264,16 +266,22 @@ AVR will be defined as well when using t
854
855 <tr><td>avr3/avr35&nbsp;[2]</td><td>at90usb82</td><td>__AVR_AT90USB82__</td></tr>
856 <tr><td>avr3/avr35&nbsp;[2]</td><td>at90usb162</td><td>__AVR_AT90USB162__</td></tr>
857+ <tr><td>avr3/avr35&nbsp;[2]</td><td>ata5505</td><td>__AVR_ATA5505__</td></tr>
858 <tr><td>avr3/avr35&nbsp;[2]</td><td>atmega8u2</td><td>__AVR_ATmega8U2__</td></tr>
859 <tr><td>avr3/avr35&nbsp;[2]</td><td>atmega16u2</td><td>__AVR_ATmega16U2__</td></tr>
860 <tr><td>avr3/avr35&nbsp;[2]</td><td>atmega32u2</td><td>__AVR_ATmega32U2__</td></tr>
861 <tr><td>avr3/avr35&nbsp;[2]</td><td>attiny167</td><td>__AVR_ATtiny167__</td></tr>
862+ <tr><td>avr3/avr35&nbsp;[2]</td><td>attiny1634</td><td>__AVR_ATtiny1634__</td></tr>
863
864 <tr><td>avr3</td><td>at76c711</td><td>__AVR_AT76C711__</td></tr>
865+ <tr><td>avr4</td><td>ata6285</td><td>__AVR_ATA6285__</td></tr>
866+ <tr><td>avr4</td><td>ata6286</td><td>__AVR_ATA6286__</td></tr>
867 <tr><td>avr4</td><td>atmega48</td><td>__AVR_ATmega48__</td></tr>
868 <tr><td>avr4</td><td>atmega48a</td><td>__AVR_ATmega48A__</td></tr>
869+ <tr><td>avr4</td><td>atmega48pa</td><td>__AVR_ATmega48PA__</td></tr>
870 <tr><td>avr4</td><td>atmega48p</td><td>__AVR_ATmega48P__</td></tr>
871 <tr><td>avr4</td><td>atmega8</td><td>__AVR_ATmega8__</td></tr>
872+ <tr><td>avr4</td><td>atmega8a</td><td>__AVR_ATmega8A__</td></tr>
873 <tr><td>avr4</td><td>atmega8515</td><td>__AVR_ATmega8515__</td></tr>
874 <tr><td>avr4</td><td>atmega8535</td><td>__AVR_ATmega8535__</td></tr>
875 <tr><td>avr4</td><td>atmega88</td><td>__AVR_ATmega88__</td></tr>
876@@ -290,6 +298,7 @@ AVR will be defined as well when using t
877
878 <tr><td>avr5</td><td>at90can32</td><td>__AVR_AT90CAN32__</td></tr>
879 <tr><td>avr5</td><td>at90can64</td><td>__AVR_AT90CAN64__</td></tr>
880+ <tr><td>avr5</td><td>at90pwm161</td><td>__AVR_AT90PWM161__</td></tr>
881 <tr><td>avr5</td><td>at90pwm216</td><td>__AVR_AT90PWM216__</td></tr>
882 <tr><td>avr5</td><td>at90pwm316</td><td>__AVR_AT90PWM316__</td></tr>
883 <tr><td>avr5</td><td>at90scr100</td><td>__AVR_AT90SCR100__</td></tr>
884@@ -297,17 +306,22 @@ AVR will be defined as well when using t
885 <tr><td>avr5</td><td>at90usb647</td><td>__AVR_AT90USB647__</td></tr>
886 <tr><td>avr5</td><td>at94k</td><td>__AVR_AT94K__</td></tr>
887 <tr><td>avr5</td><td>atmega16</td><td>__AVR_ATmega16__</td></tr>
888+ <tr><td>avr5</td><td>ata5790</td><td>__AVR_ATA5790__</td></tr>
889+ <tr><td>avr5</td><td>ata5795</td><td>__AVR_ATA5795__</td></tr>
890 <tr><td>avr5</td><td>atmega161</td><td>__AVR_ATmega161__</td></tr>
891 <tr><td>avr5</td><td>atmega162</td><td>__AVR_ATmega162__</td></tr>
892 <tr><td>avr5</td><td>atmega163</td><td>__AVR_ATmega163__</td></tr>
893 <tr><td>avr5</td><td>atmega164a</td><td>__AVR_ATmega164A__</td></tr>
894 <tr><td>avr5</td><td>atmega164p</td><td>__AVR_ATmega164P__</td></tr>
895+ <tr><td>avr5</td><td>atmega164pa</td><td>__AVR_ATmega164PA__</td></tr>
896 <tr><td>avr5</td><td>atmega165</td><td>__AVR_ATmega165__</td></tr>
897 <tr><td>avr5</td><td>atmega165a</td><td>__AVR_ATmega165A__</td></tr>
898 <tr><td>avr5</td><td>atmega165p</td><td>__AVR_ATmega165P__</td></tr>
899+ <tr><td>avr5</td><td>atmega165pa</td><td>__AVR_ATmega165PA__</td></tr>
900 <tr><td>avr5</td><td>atmega168</td><td>__AVR_ATmega168__</td></tr>
901 <tr><td>avr5</td><td>atmega168a</td><td>__AVR_ATmega168A__</td></tr>
902 <tr><td>avr5</td><td>atmega168p</td><td>__AVR_ATmega168P__</td></tr>
903+ <tr><td>avr5</td><td>atmega168pa</td><td>__AVR_ATmega168PA__</td></tr>
904 <tr><td>avr5</td><td>atmega169</td><td>__AVR_ATmega169__</td></tr>
905 <tr><td>avr5</td><td>atmega169a</td><td>__AVR_ATmega169A__</td></tr>
906 <tr><td>avr5</td><td>atmega169p</td><td>__AVR_ATmega169P__</td></tr>
907@@ -320,6 +334,7 @@ AVR will be defined as well when using t
908 <tr><td>avr5</td><td>atmega16m1</td><td>__AVR_ATmega16M1__</td></tr>
909 <tr><td>avr5</td><td>atmega16u4</td><td>__AVR_ATmega16U4__</td></tr>
910 <tr><td>avr5</td><td>atmega32</td><td>__AVR_ATmega32__</td></tr>
911+ <tr><td>avr5</td><td>atmega32a</td><td>__AVR_ATmega32A__</td></tr>
912 <tr><td>avr5</td><td>atmega323</td><td>__AVR_ATmega323__</td></tr>
913 <tr><td>avr5</td><td>atmega324a</td><td>__AVR_ATmega324A__</td></tr>
914 <tr><td>avr5</td><td>atmega324p</td><td>__AVR_ATmega324P__</td></tr>
915@@ -327,9 +342,11 @@ AVR will be defined as well when using t
916 <tr><td>avr5</td><td>atmega325</td><td>__AVR_ATmega325__</td></tr>
917 <tr><td>avr5</td><td>atmega325a</td><td>__AVR_ATmega325A__</td></tr>
918 <tr><td>avr5</td><td>atmega325p</td><td>__AVR_ATmega325P__</td></tr>
919+ <tr><td>avr5</td><td>atmega325pa</td><td>__AVR_ATmega325PA__</td></tr>
920 <tr><td>avr5</td><td>atmega3250</td><td>__AVR_ATmega3250__</td></tr>
921 <tr><td>avr5</td><td>atmega3250a</td><td>__AVR_ATmega3250A__</td></tr>
922 <tr><td>avr5</td><td>atmega3250p</td><td>__AVR_ATmega3250P__</td></tr>
923+ <tr><td>avr5</td><td>atmega3250pa</td><td>__AVR_ATmega3250PA__</td></tr>
924 <tr><td>avr5</td><td>atmega328</td><td>__AVR_ATmega328__</td></tr>
925 <tr><td>avr5</td><td>atmega328p</td><td>__AVR_ATmega328P__</td></tr>
926 <tr><td>avr5</td><td>atmega329</td><td>__AVR_ATmega329__</td></tr>
927@@ -339,6 +356,7 @@ AVR will be defined as well when using t
928 <tr><td>avr5</td><td>atmega3290</td><td>__AVR_ATmega3290__</td></tr>
929 <tr><td>avr5</td><td>atmega3290a</td><td>__AVR_ATmega3290A__</td></tr>
930 <tr><td>avr5</td><td>atmega3290p</td><td>__AVR_ATmega3290P__</td></tr>
931+ <tr><td>avr5</td><td>atmega3290pa</td><td>__AVR_ATmega3290PA__</td></tr>
932 <tr><td>avr5</td><td>atmega32c1</td><td>__AVR_ATmega32C1__</td></tr>
933 <tr><td>avr5</td><td>atmega32hvb</td><td>__AVR_ATmega32HVB__</td></tr>
934 <tr><td>avr5</td><td>atmega32hvbrevb</td><td>__AVR_ATmega32HVBREVB__</td></tr>
935@@ -347,6 +365,7 @@ AVR will be defined as well when using t
936 <tr><td>avr5</td><td>atmega32u6</td><td>__AVR_ATmega32U6__</td></tr>
937 <tr><td>avr5</td><td>atmega406</td><td>__AVR_ATmega406__</td></tr>
938 <tr><td>avr5</td><td>atmega64</td><td>__AVR_ATmega64__</td></tr>
939+ <tr><td>avr5</td><td>atmega64a</td><td>__AVR_ATmega64A__</td></tr>
940 <tr><td>avr5</td><td>atmega640</td><td>__AVR_ATmega640__</td></tr>
941 <tr><td>avr5</td><td>atmega644</td><td>__AVR_ATmega644__</td></tr>
942 <tr><td>avr5</td><td>atmega644a</td><td>__AVR_ATmega644A__</td></tr>
943@@ -373,34 +392,59 @@ AVR will be defined as well when using t
944 <tr><td>avr5/avr51&nbsp;[3]</td><td>at90usb1286</td><td>__AVR_AT90USB1286__</td></tr>
945 <tr><td>avr5/avr51&nbsp;[3]</td><td>at90usb1287</td><td>__AVR_AT90USB1287__</td></tr>
946 <tr><td>avr5/avr51&nbsp;[3]</td><td>atmega128</td><td>__AVR_ATmega128__</td></tr>
947+ <tr><td>avr5/avr51&nbsp;[3]</td><td>atmega128a</td><td>__AVR_ATmega128A__</td></tr>
948 <tr><td>avr5/avr51&nbsp;[3]</td><td>atmega1280</td><td>__AVR_ATmega1280__</td></tr>
949 <tr><td>avr5/avr51&nbsp;[3]</td><td>atmega1281</td><td>__AVR_ATmega1281__</td></tr>
950+ <tr><td>avr5/avr51&nbsp;[3]</td><td>atmega1284</td><td>__AVR_ATmega1284__</td></tr>
951 <tr><td>avr5/avr51&nbsp;[3]</td><td>atmega1284p</td><td>__AVR_ATmega1284P__</td></tr>
952
953 <tr><td>avr6</td><td>atmega2560</td><td>__AVR_ATmega2560__</td></tr>
954 <tr><td>avr6</td><td>atmega2561</td><td>__AVR_ATmega2561__</td></tr>
955
956 <tr><td>avrxmega2</td><td>atxmega16a4</td><td>__AVR_ATxmega16A4__</td></tr>
957+ <tr><td>avrxmega2</td><td>atxmega16a4u</td><td>__AVR_ATxmega16A4U__</td></tr>
958+ <tr><td>avrxmega2</td><td>atxmega16c4</td><td>__AVR_ATxmega16C4__</td></tr>
959 <tr><td>avrxmega2</td><td>atxmega16d4</td><td>__AVR_ATxmega16D4__</td></tr>
960 <tr><td>avrxmega2</td><td>atxmega32a4</td><td>__AVR_ATxmega32A4__</td></tr>
961+ <tr><td>avrxmega2</td><td>atxmega32a4u</td><td>__AVR_ATxmega32A4U__</td></tr>
962+ <tr><td>avrxmega2</td><td>atxmega32c4</td><td>__AVR_ATxmega32C4__</td></tr>
963 <tr><td>avrxmega2</td><td>atxmega32d4</td><td>__AVR_ATxmega32D4__</td></tr>
964
965 <tr><td>avrxmega4</td><td>atxmega64a3</td><td>__AVR_ATxmega64A3__</td></tr>
966+ <tr><td>avrxmega4</td><td>atxmega64a3u</td><td>__AVR_ATxmega64A3U__</td></tr>
967+ <tr><td>avrxmega4</td><td>atxmega64a4u</td><td>__AVR_ATxmega64A4U__</td></tr>
968+ <tr><td>avrxmega4</td><td>atxmega64b1</td><td>__AVR_ATxmega64B1__</td></tr>
969+ <tr><td>avrxmega4</td><td>atxmega64b3</td><td>__AVR_ATxmega64B3__</td></tr>
970+ <tr><td>avrxmega4</td><td>atxmega64c3</td><td>__AVR_ATxmega64C3__</td></tr>
971 <tr><td>avrxmega4</td><td>atxmega64d3</td><td>__AVR_ATxmega64D3__</td></tr>
972+ <tr><td>avrxmega4</td><td>atxmega64d4</td><td>__AVR_ATxmega64D4__</td></tr>
973
974 <tr><td>avrxmega5</td><td>atxmega64a1</td><td>__AVR_ATxmega64A1__</td></tr>
975 <tr><td>avrxmega5</td><td>atxmega64a1u</td><td>__AVR_ATxmega64A1U__</td></tr>
976
977 <tr><td>avrxmega6</td><td>atxmega128a3</td><td>__AVR_ATxmega128A3__</td></tr>
978+ <tr><td>avrxmega6</td><td>atxmega128a3u</td><td>__AVR_ATxmega128A3U__</td></tr>
979+ <tr><td>avrxmega6</td><td>atxmega128b1</td><td>__AVR_ATxmega128B1__</td></tr>
980+ <tr><td>avrxmega6</td><td>atxmega128b3</td><td>__AVR_ATxmega128B3__</td></tr>
981+ <tr><td>avrxmega6</td><td>atxmega128c3</td><td>__AVR_ATxmega128C3__</td></tr>
982 <tr><td>avrxmega6</td><td>atxmega128d3</td><td>__AVR_ATxmega128D3__</td></tr>
983+ <tr><td>avrxmega6</td><td>atxmega128d4</td><td>__AVR_ATxmega128D4__</td></tr>
984 <tr><td>avrxmega6</td><td>atxmega192a3</td><td>__AVR_ATxmega192A3__</td></tr>
985+ <tr><td>avrxmega6</td><td>atxmega192a3u</td><td>__AVR_ATxmega192A3U__</td></tr>
986+ <tr><td>avrxmega6</td><td>atxmega192c3</td><td>__AVR_ATxmega192C3__</td></tr>
987 <tr><td>avrxmega6</td><td>atxmega192d3</td><td>__AVR_ATxmega192D3__</td></tr>
988 <tr><td>avrxmega6</td><td>atxmega256a3</td><td>__AVR_ATxmega256A3__</td></tr>
989+ <tr><td>avrxmega6</td><td>atxmega256a3u</td><td>__AVR_ATxmega256A3U__</td></tr>
990 <tr><td>avrxmega6</td><td>atxmega256a3b</td><td>__AVR_ATxmega256A3B__</td></tr>
991+ <tr><td>avrxmega6</td><td>atxmega256a3bu</td><td>__AVR_ATxmega256A3BU__</td></tr>
992+ <tr><td>avrxmega6</td><td>atxmega256c3</td><td>__AVR_ATxmega256C3__</td></tr>
993 <tr><td>avrxmega6</td><td>atxmega256d3</td><td>__AVR_ATxmega256D3__</td></tr>
994+ <tr><td>avrxmega6</td><td>atxmega384c3</td><td>__AVR_ATxmega384C3__</td></tr>
995+ <tr><td>avrxmega6</td><td>atxmega384d3</td><td>__AVR_ATxmega384D3__</td></tr>
996
997 <tr><td>avrxmega7</td><td>atxmega128a1</td><td>__AVR_ATxmega128A1__</td></tr>
998 <tr><td>avrxmega7</td><td>atxmega128a1u</td><td>__AVR_ATxmega128A1U__</td></tr>
999+ <tr><td>avrxmega7</td><td>atxmega128a4u</td><td>__AVR_ATxmega128A4U__</td></tr>
1000
1001 <tr><td>avrtiny10</td><td>attiny4</td><td>__AVR_ATtiny4__</td></tr>
1002 <tr><td>avrtiny10</td><td>attiny5</td><td>__AVR_ATtiny5__</td></tr>
1003diff -Naurp include/avr/eeprom.h include/avr/eeprom.h
69ed15f0
JR
1004--- include/avr/eeprom.h 2011-12-29 14:21:50.000000000 +0530
1005+++ include/avr/eeprom.h 2012-11-22 19:48:48.000000000 +0530
9fe267c2
PZ
1006@@ -67,6 +67,8 @@
1007 # define _EEPROM_SUFFIX _90pwm216
1008 #elif defined (__AVR_AT90PWM316__)
1009 # define _EEPROM_SUFFIX _90pwm316
1010+#elif defined (__AVR_AT90PWM161__)
1011+# define _EEPROM_SUFFIX _90pwm161
1012 #elif defined (__AVR_AT90PWM81__)
1013 # define _EEPROM_SUFFIX _90pwm81
1014 #elif defined (__AVR_ATmega16M1__)
1015@@ -93,10 +95,14 @@
1016 # define _EEPROM_SUFFIX _m64m1
1017 #elif defined (__AVR_ATmega128__)
1018 # define _EEPROM_SUFFIX _m128
1019+#elif defined (__AVR_ATmega128A__)
1020+# define _EEPROM_SUFFIX _m128a
1021 #elif defined (__AVR_ATmega1280__)
1022 # define _EEPROM_SUFFIX _m1280
1023 #elif defined (__AVR_ATmega1281__)
1024 # define _EEPROM_SUFFIX _m1281
1025+#elif defined (__AVR_ATmega1284__)
1026+# define _EEPROM_SUFFIX _m1284
1027 #elif defined (__AVR_ATmega1284P__)
1028 # define _EEPROM_SUFFIX _m1284p
1029 #elif defined (__AVR_ATmega128RFA1__)
1030@@ -125,6 +131,8 @@
1031 # define _EEPROM_SUFFIX _usb1287
1032 #elif defined (__AVR_ATmega64__)
1033 # define _EEPROM_SUFFIX _m64
1034+#elif defined (__AVR_ATmega64A__)
1035+# define _EEPROM_SUFFIX _m64a
1036 #elif defined (__AVR_ATmega640__)
1037 # define _EEPROM_SUFFIX _m640
1038 #elif defined (__AVR_ATmega644__)
1039@@ -163,6 +171,8 @@
1040 # define _EEPROM_SUFFIX _m103
1041 #elif defined (__AVR_ATmega32__)
1042 # define _EEPROM_SUFFIX _m32
1043+#elif defined (__AVR_ATmega32A__)
1044+# define _EEPROM_SUFFIX _m32a
1045 #elif defined (__AVR_ATmega323__)
1046 # define _EEPROM_SUFFIX _m323
1047 #elif defined (__AVR_ATmega324A__)
1048@@ -177,12 +187,16 @@
1049 # define _EEPROM_SUFFIX _m325a
1050 #elif defined (__AVR_ATmega325P__)
1051 # define _EEPROM_SUFFIX _m325p
1052+#elif defined (__AVR_ATmega325PA__)
1053+# define _EEPROM_SUFFIX _m325pa
1054 #elif defined (__AVR_ATmega3250__)
1055 # define _EEPROM_SUFFIX _m3250
1056 #elif defined (__AVR_ATmega3250A__)
1057 # define _EEPROM_SUFFIX _m3250a
1058 #elif defined (__AVR_ATmega3250P__)
1059 # define _EEPROM_SUFFIX _m3250p
1060+#elif defined (__AVR_ATmega3250PA__)
1061+# define _EEPROM_SUFFIX _m3250pa
1062 #elif defined (__AVR_ATmega328__)
1063 # define _EEPROM_SUFFIX _m328
1064 #elif defined (__AVR_ATmega328P__)
1065@@ -201,6 +215,8 @@
1066 # define _EEPROM_SUFFIX _m3290a
1067 #elif defined (__AVR_ATmega3290P__)
1068 # define _EEPROM_SUFFIX _m3290p
1069+#elif defined (__AVR_ATmega3290PA__)
1070+# define _EEPROM_SUFFIX _m3290pa
1071 #elif defined (__AVR_ATmega32HVB__)
1072 # define _EEPROM_SUFFIX _m32hvb
1073 #elif defined (__AVR_ATmega32HVBREVB__)
1074@@ -223,18 +239,24 @@
1075 # define _EEPROM_SUFFIX _m164
1076 #elif defined (__AVR_ATmega164P__)
1077 # define _EEPROM_SUFFIX _m164p
1078+#elif defined (__AVR_ATmega164PA__)
1079+# define _EEPROM_SUFFIX _m164pa
1080 #elif defined (__AVR_ATmega165__)
1081 # define _EEPROM_SUFFIX _m165
1082 #elif defined (__AVR_ATmega165A__)
1083 # define _EEPROM_SUFFIX _m165a
1084 #elif defined (__AVR_ATmega165P__)
1085 # define _EEPROM_SUFFIX _m165p
1086+#elif defined (__AVR_ATmega165PA__)
1087+# define _EEPROM_SUFFIX _m165pa
1088 #elif defined (__AVR_ATmega168__)
1089 # define _EEPROM_SUFFIX _m168
1090 #elif defined (__AVR_ATmega168A__)
1091 # define _EEPROM_SUFFIX _m168a
1092 #elif defined (__AVR_ATmega168P__)
1093 # define _EEPROM_SUFFIX _m168p
1094+#elif defined (__AVR_ATmega168PA__)
1095+# define _EEPROM_SUFFIX _m168pa
1096 #elif defined (__AVR_ATmega169__)
1097 # define _EEPROM_SUFFIX _m169
1098 #elif defined (__AVR_ATmega169A__)
1099@@ -255,10 +277,14 @@
1100 # define _EEPROM_SUFFIX _m16hvbrevb
1101 #elif defined (__AVR_ATmega8__)
1102 # define _EEPROM_SUFFIX _m8
1103+#elif defined (__AVR_ATmega8A__)
1104+# define _EEPROM_SUFFIX _m8a
1105 #elif defined (__AVR_ATmega48__)
1106 # define _EEPROM_SUFFIX _m48
1107 #elif defined (__AVR_ATmega48A__)
1108 # define _EEPROM_SUFFIX _m48a
1109+#elif defined (__AVR_ATmega48PA__)
1110+# define _EEPROM_SUFFIX _m48pa
1111 #elif defined (__AVR_ATmega48P__)
1112 # define _EEPROM_SUFFIX _m48p
1113 #elif defined (__AVR_ATmega88__)
1114@@ -341,20 +367,32 @@
1115 # define _EEPROM_SUFFIX _tn43u
1116 #elif defined (__AVR_ATtiny48__)
1117 # define _EEPROM_SUFFIX _tn48
1118+#elif defined (__AVR_ATtiny828__)
1119+# define _EEPROM_SUFFIX _tn828
1120 #elif defined (__AVR_ATtiny88__)
1121 # define _EEPROM_SUFFIX _tn88
1122 #elif defined (__AVR_ATtiny87__)
1123 # define _EEPROM_SUFFIX _tn87
1124 #elif defined (__AVR_ATtiny167__)
1125 # define _EEPROM_SUFFIX _tn167
1126+#elif defined (__AVR_ATtiny1634__)
1127+# define _EEPROM_SUFFIX _tn1634
1128 #elif defined (__AVR_AT90SCR100__)
1129 # define _EEPROM_SUFFIX _90scr100
1130 #elif defined (__AVR_ATxmega16A4__)
1131 # define _EEPROM_SUFFIX _x16a4
1132+#elif defined (__AVR_ATxmega16A4U__)
1133+# define _EEPROM_SUFFIX _x16a4u
1134+#elif defined (__AVR_ATxmega16C4__)
1135+# define _EEPROM_SUFFIX _x16c4
1136 #elif defined (__AVR_ATxmega16D4__)
1137 # define _EEPROM_SUFFIX _x16d4
1138 #elif defined (__AVR_ATxmega32A4__)
1139 # define _EEPROM_SUFFIX _x32a4
1140+#elif defined (__AVR_ATxmega32A4U__)
1141+# define _EEPROM_SUFFIX _x32a4u
1142+#elif defined (__AVR_ATxmega32C4__)
1143+# define _EEPROM_SUFFIX _x32c4
1144 #elif defined (__AVR_ATxmega32D4__)
1145 # define _EEPROM_SUFFIX _x32d4
1146 #elif defined (__AVR_ATxmega64A1__)
1147@@ -363,28 +401,78 @@
1148 # define _EEPROM_SUFFIX _x64a1u
1149 #elif defined (__AVR_ATxmega64A3__)
1150 # define _EEPROM_SUFFIX _x64a3
1151+#elif defined (__AVR_ATxmega64A3U__)
1152+# define _EEPROM_SUFFIX _x64a3u
1153+#elif defined (__AVR_ATxmega64A4U__)
1154+# define _EEPROM_SUFFIX _x64a4u
1155+#elif defined (__AVR_ATxmega64B1__)
1156+# define _EEPROM_SUFFIX _x64b1
1157+#elif defined (__AVR_ATxmega64B3__)
1158+# define _EEPROM_SUFFIX _x64b3
1159+#elif defined (__AVR_ATxmega64C3__)
1160+# define _EEPROM_SUFFIX _x64c3
1161 #elif defined (__AVR_ATxmega64D3__)
1162 # define _EEPROM_SUFFIX _x64d3
1163+#elif defined (__AVR_ATxmega64D4__)
1164+# define _EEPROM_SUFFIX _x64d4
1165 #elif defined (__AVR_ATxmega128A1__)
1166 # define _EEPROM_SUFFIX _x128a1
1167 #elif defined (__AVR_ATxmega128A1U__)
1168 # define _EEPROM_SUFFIX _x128a1u
1169+#elif defined (__AVR_ATxmega128A4U__)
1170+# define _EEPROM_SUFFIX _x128a4u
1171 #elif defined (__AVR_ATxmega128A3__)
1172 # define _EEPROM_SUFFIX _x128a3
1173+#elif defined (__AVR_ATxmega128A3U__)
1174+# define _EEPROM_SUFFIX _x128a3u
1175+#elif defined (__AVR_ATxmega128B1__)
1176+# define _EEPROM_SUFFIX _x128b1
1177+#elif defined (__AVR_ATxmega128B3__)
1178+# define _EEPROM_SUFFIX _x128b3
1179+#elif defined (__AVR_ATxmega128C3__)
1180+# define _EEPROM_SUFFIX _x128c3
1181 #elif defined (__AVR_ATxmega128D3__)
1182 # define _EEPROM_SUFFIX _x128d3
1183+#elif defined (__AVR_ATxmega128D4__)
1184+# define _EEPROM_SUFFIX _x128d4
1185 #elif defined (__AVR_ATxmega192A3__)
1186 # define _EEPROM_SUFFIX _x192a3
1187+#elif defined (__AVR_ATxmega192A3U__)
1188+# define _EEPROM_SUFFIX _x192a3u
1189+#elif defined (__AVR_ATxmega192C3__)
1190+# define _EEPROM_SUFFIX _x192c3
1191 #elif defined (__AVR_ATxmega192D3__)
1192 # define _EEPROM_SUFFIX _x192d3
1193 #elif defined (__AVR_ATxmega256A3__)
1194 # define _EEPROM_SUFFIX _x256a3
1195+#elif defined (__AVR_ATxmega256A3U__)
1196+# define _EEPROM_SUFFIX _x256a3u
1197 #elif defined (__AVR_ATxmega256A3B__)
1198 # define _EEPROM_SUFFIX _x256a3b
1199+#elif defined (__AVR_ATxmega256A3BU__)
1200+# define _EEPROM_SUFFIX _x256a3bu
1201+#elif defined (__AVR_ATxmega256C3__)
1202+# define _EEPROM_SUFFIX _x256c3
1203 #elif defined (__AVR_ATxmega256D3__)
1204 # define _EEPROM_SUFFIX _x256d3
1205+#elif defined (__AVR_ATxmega384C3__)
1206+# define _EEPROM_SUFFIX _x384c3
1207+#elif defined (__AVR_ATxmega384D3__)
1208+# define _EEPROM_SUFFIX _x384d3
1209+#elif defined (__AVR_ATA5505__)
1210+# define _EEPROM_SUFFIX _a5505
1211+#elif defined (__AVR_ATA5272__)
1212+# define _EEPROM_SUFFIX _a5272
1213+#elif defined (__AVR_ATA6285__)
1214+# define _EEPROM_SUFFIX _a6285
1215+#elif defined (__AVR_ATA6286__)
1216+# define _EEPROM_SUFFIX _a6286
1217 #elif defined (__AVR_ATA6289__)
1218 # define _EEPROM_SUFFIX _a6289
1219+#elif defined (__AVR_ATA5790__)
1220+# define _EEPROM_SUFFIX _a5790
1221+#elif defined (__AVR_ATA5795__)
1222+# define _EEPROM_SUFFIX _a5795
1223 /* avr1: the following only supported for assembler programs */
1224 #elif defined (__AVR_ATtiny28__)
1225 # define _EEPROM_SUFFIX _tn28
1226diff -Naurp include/avr/io.h include/avr/io.h
69ed15f0
JR
1227--- include/avr/io.h 2011-12-29 14:21:50.000000000 +0530
1228+++ include/avr/io.h 2012-11-22 19:48:48.000000000 +0530
9fe267c2
PZ
1229@@ -122,6 +122,8 @@
1230 # include <avr/io90pwm216.h>
1231 #elif defined (__AVR_AT90PWM316__)
1232 # include <avr/io90pwm316.h>
1233+#elif defined (__AVR_AT90PWM161__)
1234+# include <avr/io90pwm161.h>
1235 #elif defined (__AVR_AT90PWM81__)
1236 # include <avr/io90pwm81.h>
1237 #elif defined (__AVR_ATmega8U2__)
1238@@ -148,10 +150,14 @@
1239 # include <avr/iom64m1.h>
1240 #elif defined (__AVR_ATmega128__)
1241 # include <avr/iom128.h>
1242+#elif defined (__AVR_ATmega128A__)
1243+# include <avr/iom128a.h>
1244 #elif defined (__AVR_ATmega1280__)
1245 # include <avr/iom1280.h>
1246 #elif defined (__AVR_ATmega1281__)
1247 # include <avr/iom1281.h>
1248+#elif defined (__AVR_ATmega1284__)
1249+# include <avr/iom1284.h>
1250 #elif defined (__AVR_ATmega1284P__)
1251 # include <avr/iom1284p.h>
1252 #elif defined (__AVR_ATmega128RFA1__)
1253@@ -180,6 +186,8 @@
1254 # include <avr/iousb1287.h>
1255 #elif defined (__AVR_ATmega64__)
1256 # include <avr/iom64.h>
1257+#elif defined (__AVR_ATmega64A__)
1258+# include <avr/iom64a.h>
1259 #elif defined (__AVR_ATmega640__)
1260 # include <avr/iom640.h>
1261 #elif defined (__AVR_ATmega644__) || defined (__AVR_ATmega644A__)
1262@@ -204,6 +212,8 @@
1263 # include <avr/iom103.h>
1264 #elif defined (__AVR_ATmega32__)
1265 # include <avr/iom32.h>
1266+#elif defined (__AVR_ATmega32A__)
1267+# include <avr/iom32a.h>
1268 #elif defined (__AVR_ATmega323__)
1269 # include <avr/iom323.h>
1270 #elif defined (__AVR_ATmega324P__) || defined (__AVR_ATmega324A__)
1271@@ -214,10 +224,14 @@
1272 # include <avr/iom325.h>
1273 #elif defined (__AVR_ATmega325P__)
1274 # include <avr/iom325.h>
1275+#elif defined (__AVR_ATmega325PA__)
1276+# include <avr/iom325pa.h>
1277 #elif defined (__AVR_ATmega3250__) || defined (__AVR_ATmega3250A__)
1278 # include <avr/iom3250.h>
1279 #elif defined (__AVR_ATmega3250P__)
1280 # include <avr/iom3250.h>
1281+#elif defined (__AVR_ATmega3250PA__)
1282+# include <avr/iom3250pa.h>
1283 #elif defined (__AVR_ATmega328P__) || defined (__AVR_ATmega328__)
1284 # include <avr/iom328p.h>
1285 #elif defined (__AVR_ATmega329__) || defined (__AVR_ATmega329A__)
1286@@ -228,6 +242,8 @@
1287 # include <avr/iom3290.h>
1288 #elif defined (__AVR_ATmega3290P__)
1289 # include <avr/iom3290.h>
1290+#elif defined (__AVR_ATmega3290PA__)
1291+# include <avr/iom3290pa.h>
1292 #elif defined (__AVR_ATmega32HVB__)
1293 # include <avr/iom32hvb.h>
1294 #elif defined (__AVR_ATmega32HVBREVB__)
1295@@ -246,14 +262,20 @@
1296 # include <avr/iom163.h>
1297 #elif defined (__AVR_ATmega164P__) || defined (__AVR_ATmega164A__)
1298 # include <avr/iom164.h>
1299+#elif defined (__AVR_ATmega164PA__)
1300+# include <avr/iom164pa.h>
1301 #elif defined (__AVR_ATmega165__) || defined (__AVR_ATmega165A__)
1302 # include <avr/iom165.h>
1303 #elif defined (__AVR_ATmega165P__)
1304 # include <avr/iom165p.h>
1305+#elif defined (__AVR_ATmega165PA__)
1306+# include <avr/iom165pa.h>
1307 #elif defined (__AVR_ATmega168__) || defined (__AVR_ATmega168A__)
1308 # include <avr/iom168.h>
1309 #elif defined (__AVR_ATmega168P__)
1310 # include <avr/iom168p.h>
1311+#elif defined (__AVR_ATmega168PA__)
1312+# include <avr/iom168pa.h>
1313 #elif defined (__AVR_ATmega169__) || defined (__AVR_ATmega169A__)
1314 # include <avr/iom169.h>
1315 #elif defined (__AVR_ATmega169P__)
1316@@ -272,8 +294,12 @@
1317 # include <avr/iom16hvbrevb.h>
1318 #elif defined (__AVR_ATmega8__)
1319 # include <avr/iom8.h>
1320+#elif defined (__AVR_ATmega8A__)
1321+# include <avr/iom8a.h>
1322 #elif defined (__AVR_ATmega48__) || defined (__AVR_ATmega48A__)
1323 # include <avr/iom48.h>
1324+#elif defined (__AVR_ATmega48PA__)
1325+# include <avr/iom48pa.h>
1326 #elif defined (__AVR_ATmega48P__)
1327 # include <avr/iom48p.h>
1328 #elif defined (__AVR_ATmega88__) || defined (__AVR_ATmega88A__)
1329@@ -368,18 +394,30 @@
1330 # include <avr/iotn48.h>
1331 #elif defined (__AVR_ATtiny88__)
1332 # include <avr/iotn88.h>
1333+#elif defined (__AVR_ATtiny828__)
1334+# include <avr/iotn828.h>
1335 #elif defined (__AVR_ATtiny87__)
1336 # include <avr/iotn87.h>
1337 #elif defined (__AVR_ATtiny167__)
1338 # include <avr/iotn167.h>
1339+#elif defined (__AVR_ATtiny1634__)
1340+# include <avr/iotn1634.h>
1341 #elif defined (__AVR_AT90SCR100__)
1342 # include <avr/io90scr100.h>
1343 #elif defined (__AVR_ATxmega16A4__)
1344 # include <avr/iox16a4.h>
1345+#elif defined (__AVR_ATxmega16A4U__)
1346+# include <avr/iox16a4u.h>
1347+#elif defined (__AVR_ATxmega16C4__)
1348+# include <avr/iox16c4.h>
1349 #elif defined (__AVR_ATxmega16D4__)
1350 # include <avr/iox16d4.h>
1351 #elif defined (__AVR_ATxmega32A4__)
1352 # include <avr/iox32a4.h>
1353+#elif defined (__AVR_ATxmega32A4U__)
1354+# include <avr/iox32a4u.h>
1355+#elif defined (__AVR_ATxmega32C4__)
1356+# include <avr/iox32c4.h>
1357 #elif defined (__AVR_ATxmega32D4__)
1358 # include <avr/iox32d4.h>
1359 #elif defined (__AVR_ATxmega64A1__)
1360@@ -388,26 +426,76 @@
1361 # include <avr/iox64a1u.h>
1362 #elif defined (__AVR_ATxmega64A3__)
1363 # include <avr/iox64a3.h>
1364+#elif defined (__AVR_ATxmega64A3U__)
1365+# include <avr/iox64a3u.h>
1366+#elif defined (__AVR_ATxmega64A4U__)
1367+# include <avr/iox64a4u.h>
1368+#elif defined (__AVR_ATxmega64B1__)
1369+# include <avr/iox64b1.h>
1370+#elif defined (__AVR_ATxmega64B3__)
1371+# include <avr/iox64b3.h>
1372+#elif defined (__AVR_ATxmega64C3__)
1373+# include <avr/iox64c3.h>
1374 #elif defined (__AVR_ATxmega64D3__)
1375 # include <avr/iox64d3.h>
1376+#elif defined (__AVR_ATxmega64D4__)
1377+# include <avr/iox64d4.h>
1378 #elif defined (__AVR_ATxmega128A1__)
1379 # include <avr/iox128a1.h>
1380 #elif defined (__AVR_ATxmega128A1U__)
1381 # include <avr/iox128a1u.h>
1382+#elif defined (__AVR_ATxmega128A4U__)
1383+# include <avr/iox128a4u.h>
1384 #elif defined (__AVR_ATxmega128A3__)
1385 # include <avr/iox128a3.h>
1386+#elif defined (__AVR_ATxmega128A3U__)
1387+# include <avr/iox128a3u.h>
1388+#elif defined (__AVR_ATxmega128B1__)
1389+# include <avr/iox128b1.h>
1390+#elif defined (__AVR_ATxmega128B3__)
1391+# include <avr/iox128b3.h>
1392+#elif defined (__AVR_ATxmega128C3__)
1393+# include <avr/iox128c3.h>
1394 #elif defined (__AVR_ATxmega128D3__)
1395 # include <avr/iox128d3.h>
1396+#elif defined (__AVR_ATxmega128D4__)
1397+# include <avr/iox128d4.h>
1398 #elif defined (__AVR_ATxmega192A3__)
1399 # include <avr/iox192a3.h>
1400+#elif defined (__AVR_ATxmega192A3U__)
1401+# include <avr/iox192a3u.h>
1402+#elif defined (__AVR_ATxmega192C3__)
1403+# include <avr/iox192c3.h>
1404 #elif defined (__AVR_ATxmega192D3__)
1405 # include <avr/iox192d3.h>
1406 #elif defined (__AVR_ATxmega256A3__)
1407 # include <avr/iox256a3.h>
1408+#elif defined (__AVR_ATxmega256A3U__)
1409+# include <avr/iox256a3u.h>
1410 #elif defined (__AVR_ATxmega256A3B__)
1411 # include <avr/iox256a3b.h>
1412+#elif defined (__AVR_ATxmega256A3BU__)
1413+# include <avr/iox256a3bu.h>
1414+#elif defined (__AVR_ATxmega256C3__)
1415+# include <avr/iox256c3.h>
1416 #elif defined (__AVR_ATxmega256D3__)
1417 # include <avr/iox256d3.h>
1418+#elif defined (__AVR_ATxmega384C3__)
1419+# include <avr/iox384c3.h>
1420+#elif defined (__AVR_ATxmega384D3__)
1421+# include <avr/iox384d3.h>
1422+#elif defined (__AVR_ATA5790__)
1423+# include <avr/ioa5790.h>
1424+#elif defined (__AVR_ATA5272__)
1425+# include <avr/ioa5272.h>
1426+#elif defined (__AVR_ATA5505__)
1427+# include <avr/ioa5505.h>
1428+#elif defined (__AVR_ATA5795__)
1429+# include <avr/ioa5795.h>
1430+#elif defined (__AVR_ATA6285__)
1431+# include <avr/ioa6285.h>
1432+#elif defined (__AVR_ATA6286__)
1433+# include <avr/ioa6286.h>
1434 #elif defined (__AVR_ATA6289__)
1435 # include <avr/ioa6289.h>
1436 /* avr1: the following only supported for assembler programs */
1437diff -Naurp include/avr/Makefile.am include/avr/Makefile.am
69ed15f0
JR
1438--- include/avr/Makefile.am 2011-12-29 14:21:50.000000000 +0530
1439+++ include/avr/Makefile.am 2012-11-22 19:48:48.000000000 +0530
9fe267c2
PZ
1440@@ -61,8 +61,15 @@ avr_HEADERS = \
1441 io90pwm216.h \
1442 io90pwm3b.h \
1443 io90pwm316.h \
1444+ io90pwm161.h \
1445 io90pwm81.h \
1446 io90scr100.h \
1447+ ioa5505.h \
1448+ ioa5272.h \
1449+ ioa5790.h \
1450+ ioa5795.h \
1451+ ioa6285.h \
1452+ ioa6286.h \
1453 ioa6289.h \
1454 ioat94k.h \
1455 iocan32.h \
1456@@ -71,8 +78,10 @@ avr_HEADERS = \
1457 iocanxx.h \
1458 iom103.h \
1459 iom128.h \
1460+ iom128a.h \
1461 iom1280.h \
1462 iom1281.h \
1463+ iom1284.h \
1464 iom1284p.h \
1465 iom128rfa1.h \
1466 iom16.h \
1467@@ -81,10 +90,13 @@ avr_HEADERS = \
1468 iom162.h \
1469 iom163.h \
1470 iom164.h \
1471+ iom164pa.h \
1472 iom165.h \
1473 iom165p.h \
1474+ iom165pa.h \
1475 iom168.h \
1476 iom168p.h \
1477+ iom168pa.h \
1478 iom169.h \
1479 iom169p.h \
1480 iom169pa.h \
1481@@ -99,14 +111,18 @@ avr_HEADERS = \
1482 iom2561.h \
1483 iom3000.h \
1484 iom32.h \
1485+ iom32a.h \
1486 iom323.h \
1487 iom324.h \
1488 iom324pa.h \
1489 iom325.h \
1490+ iom325pa.h \
1491 iom3250.h \
1492+ iom3250pa.h \
1493 iom328p.h \
1494 iom329.h \
1495 iom3290.h \
1496+ iom3290pa.h \
1497 iom32hvb.h \
1498 iom32hvbrevb.h \
1499 iom32c1.h \
1500@@ -115,9 +131,11 @@ avr_HEADERS = \
1501 iom32u4.h \
1502 iom32u6.h \
1503 iom48.h \
1504+ iom48pa.h \
1505 iom48p.h \
1506 iom406.h \
1507 iom64.h \
1508+ iom64a.h \
1509 iom640.h \
1510 iom644.h \
1511 iom644p.h \
1512@@ -131,6 +149,7 @@ avr_HEADERS = \
1513 iom64hve.h \
1514 iom64m1.h \
1515 iom8.h \
1516+ iom8a.h \
1517 iom8515.h \
1518 iom8535.h \
1519 iom88.h \
1520@@ -152,8 +171,10 @@ avr_HEADERS = \
1521 iotn13a.h \
1522 iotn15.h \
1523 iotn167.h \
1524+ iotn1634.h \
1525 iotn20.h \
1526 iotn22.h \
1527+ iotn828.h \
1528 iotn2313.h \
1529 iotn2313a.h \
1530 iotn24.h \
1531@@ -191,22 +212,45 @@ avr_HEADERS = \
1532 iousb647.h \
1533 iousbxx6_7.h \
1534 iox64d3.h \
1535+ iox64d4.h \
1536 iox128a1.h \
1537 iox128a1u.h \
1538+ iox128a4u.h \
1539 iox128a3.h \
1540+ iox128a3u.h \
1541+ iox128b1.h \
1542+ iox128b3.h \
1543+ iox128c3.h \
1544 iox128d3.h \
1545+ iox128d4.h \
1546 iox16a4.h \
1547+ iox16a4u.h \
1548+ iox16c4.h \
1549 iox16d4.h \
1550 iox192a3.h \
1551+ iox192a3u.h \
1552+ iox192c3.h \
1553 iox192d3.h \
1554 iox256a3.h \
1555+ iox256a3u.h \
1556 iox256a3b.h \
1557+ iox256a3bu.h \
1558+ iox256c3.h \
1559 iox256d3.h \
1560+ iox384c3.h \
1561+ iox384d3.h \
1562 iox32a4.h \
1563+ iox32a4u.h \
1564+ iox32c4.h \
1565 iox32d4.h \
1566 iox64a1.h \
1567 iox64a1u.h \
1568 iox64a3.h \
1569+ iox64a3u.h \
1570+ iox64a4u.h \
1571+ iox64b1.h \
1572+ iox64b3.h \
1573+ iox64c3.h \
1574 lock.h \
1575 parity.h \
1576 pgmspace.h \
1577diff -Naurp include/avr/power.h include/avr/power.h
69ed15f0
JR
1578--- include/avr/power.h 2012-11-22 19:55:00.000000000 +0530
1579+++ include/avr/power.h 2012-11-22 19:48:48.000000000 +0530
9fe267c2
PZ
1580@@ -74,25 +74,25 @@ find out which macros are applicable to
1581 <tr>
1582 <td>power_adc_enable()</td>
1583 <td>Enable the Analog to Digital Converter module.</td>
1584- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861</td>
1585+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega325PA, ATmega3250, ATmega3250A, ATmega3250PA, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega3290PA, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861, ATxmega16A4U, ATxmega32A4U</td>
1586 </tr>
1587
1588 <tr>
1589 <td>power_adc_disable()</td>
1590 <td>Disable the Analog to Digital Converter module.</td>
1591- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861</td>
1592+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega325PA, ATmega3250, ATmega3250A, ATmega3250PA, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega3290PA, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861, ATxmega16A4U, ATxmega32A4U</td>
1593 </tr>
1594
1595 <tr>
1596 <td>power_lcd_enable()</td>
1597 <td>Enable the LCD module.</td>
1598- <td>ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490</td>
1599+ <td>ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATxmega64B1, ATxmega128B1, ATxmega64B3, ATxmega128B3</td>
1600 </tr>
1601
1602 <tr>
1603 <td>power_lcd_disable().</td>
1604 <td>Disable the LCD module.</td>
1605- <td>ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490</td>
1606+ <td>ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATxmega64B1, ATxmega128B1, ATxmega64B3, ATxmega128B3</td>
1607 </tr>
1608
1609 <tr>
1610@@ -146,43 +146,43 @@ find out which macros are applicable to
1611 <tr>
1612 <td>power_spi_enable()</td>
1613 <td>Enable the Serial Peripheral Interface module.</td>
1614- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168</td>
1615+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega325PA, ATmega3250, ATmega3250A, ATmega3250PA, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega3290PA, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168, ATxmega16A4U, ATxmega32A4U</td>
1616 </tr>
1617
1618 <tr>
1619 <td>power_spi_disable()</td>
1620 <td>Disable the Serial Peripheral Interface module.</td>
1621- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168</td>
1622+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega325PA, ATmega3250, ATmega3250A, ATmega3250PA, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega3290PA, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168, ATxmega16A4U, ATxmega32A4U</td>
1623 </tr>
1624
1625 <tr>
1626 <td>power_timer0_enable()</td>
1627 <td>Enable the Timer 0 module.</td>
1628- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM216, AT90PWM316, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861</td>
1629+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM216, AT90PWM316, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861, ATxmega16A4U, ATxmega32A4U</td>
1630 </tr>
1631
1632 <tr>
1633 <td>power_timer0_disable()</td>
1634 <td>Disable the Timer 0 module.</td>
1635- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861</td>
1636+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861, ATxmega16A4U, ATxmega32A4U</td>
1637 </tr>
1638
1639 <tr>
1640 <td>power_timer1_enable()</td>
1641 <td>Enable the Timer 1 module.</td>
1642- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861</td>
1643+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega325PA, ATmega3250, ATmega3250A, ATmega3250PA, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega3290PA, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861, ATxmega16A4U, ATxmega32A4U</td>
1644 </tr>
1645
1646 <tr>
1647 <td>power_timer1_disable()</td>
1648 <td>Disable the Timer 1 module.</td>
1649- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861</td>
1650+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, AT90PWM81, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega325PA, ATmega3250, ATmega3250A, ATmega3250PA, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega3290PA, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861, ATxmega16A4U, ATxmega32A4U</td>
1651 </tr>
1652
1653 <tr>
1654 <td>power_timer2_enable()</td>
1655 <td>Enable the Timer 2 module.</td>
1656- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168</td>
1657+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168</td>
1658 </tr>
1659
1660 <tr>
1661@@ -194,13 +194,13 @@ find out which macros are applicable to
1662 <tr>
1663 <td>power_timer3_enable()</td>
1664 <td>Enable the Timer 3 module.</td>
1665- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287</td>
1666+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287</td>
1667 </tr>
1668
1669 <tr>
1670 <td>power_timer3_disable()</td>
1671 <td>Disable the Timer 3 module.</td>
1672- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287</td>
1673+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287</td>
1674 </tr>
1675
1676 <tr>
1677@@ -230,13 +230,13 @@ find out which macros are applicable to
1678 <tr>
1679 <td>power_twi_enable()</td>
1680 <td>Enable the Two Wire Interface module.</td>
1681- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168</td>
1682+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATxmega16A4U, ATxmega32A4U</td>
1683 </tr>
1684
1685 <tr>
1686 <td>power_twi_disable()</td>
1687 <td>Disable the Two Wire Interface module.</td>
1688- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168</td>
1689+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATxmega16A4U, ATxmega32A4U</td>
1690 </tr>
1691
1692 <tr>
1693@@ -254,25 +254,25 @@ find out which macros are applicable to
1694 <tr>
1695 <td>power_usart0_enable()</td>
1696 <td>Enable the USART 0 module.</td>
1697- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168</td>
1698+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega325PA, ATmega3250, ATmega3250A, ATmega3250PA, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega3290PA, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168, ATxmega16A4U, ATxmega32A4U</td>
1699 </tr>
1700
1701 <tr>
1702 <td>power_usart0_disable()</td>
1703 <td>Disable the USART 0 module.</td>
1704- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega3250A, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168</td>
1705+ <td>ATmega640, ATmega1280, ATmega1281, ATmega1284, ATmega128RFA1, ATmega2560, ATmega2561, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega325PA, ATmega3250, ATmega3250A, ATmega3250PA, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega3290PA, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega48, ATmega88, ATmega168, ATxmega16A4U, ATxmega32A4U</td>
1706 </tr>
1707
1708 <tr>
1709 <td>power_usart1_enable()</td>
1710 <td>Enable the USART 1 module.</td>
1711- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATmega164P, ATmega324P, ATmega644</td>
1712+ <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATmega164P, ATmega324P, ATmega644, ATxmega16A4U, ATxmega32A4U</td>
1713 </tr>
1714
1715 <tr>
1716 <td>power_usart1_disable()</td>
1717 <td>Disable the USART 1 module.</td>
1718- <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATmega164P, ATmega324P, ATmega644</td>
1719+ <td>ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATmega164P, ATmega324P, ATmega644, ATxmega16A4U, ATxmega32A4U</td>
1720 </tr>
1721
1722 <tr>
1723@@ -302,13 +302,13 @@ find out which macros are applicable to
1724 <tr>
1725 <td>power_usb_enable()</td>
1726 <td>Enable the USB module.</td>
1727- <td>AT90USB646, AT90USB647, AT90USB1286, AT90USB1287</td>
1728+ <td>AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATxmega64B1, ATxmega128B1, ATxmega64B3, ATxmega128B3, ATxmega16A4U, ATxmega32A4U, ATxmega128c3, ATxmega256c3, ATxmega16c4, ATxmega32c4</td>
1729 </tr>
1730
1731 <tr>
1732 <td>power_usb_disable()</td>
1733 <td>Disable the USB module.</td>
1734- <td>AT90USB646, AT90USB647, AT90USB1286, AT90USB1287</td>
1735+ <td>AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, ATxmega64B1, ATxmega128B1, ATxmega64B3, ATxmega128B3, ATxmega16A4U, ATxmega32A4U,ATxmega128c3, ATxmega256c3, ATxmega16c4, ATxmega32c4</td>
1736 </tr>
1737
1738 <tr>
1739@@ -338,13 +338,13 @@ find out which macros are applicable to
1740 <tr>
1741 <td>power_all_enable()</td>
1742 <td>Enable all modules.</td>
1743- <td>ATxmega6A4, ATxmega32A4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmegaA1, ATxmegaA1U, ATxmega128A3, ATxmega192A3, ATxmega256A3, ATxmegaA3B, ATxmega16D4, ATxmega32D4, ATxmega64D3, ATxmega128D3, ATxmega192D3, ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega325A, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861</td>
1744+ <td>ATxmega6A4, ATxmega32A4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmegaA1, ATxmegaA1U, ATxmega128A3, ATxmega192A3, ATxmega256A3, ATxmegaA3B, ATxmega16D4, ATxmega32D4, ATxmega64D3, ATxmega128D3, ATxmega192D3, ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega325PA, ATmega3250, ATmega3250A, ATmega3250PA, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega3290PA, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861, ATxmega64B1, ATxmega128B1, ATxmega64B3, ATxmega128B3, ATxmega16A4U, ATxmega32A4U, ATxmega64A3U, ATxmega128A3U, ATxmega192A3U, ATxmega256A3U</td>
1745 </tr>
1746
1747 <tr>
1748 <td>power_all_disable()</td>
1749 <td>Disable all modules.</td>
1750- <td>ATxmega6A4, ATxmega32A4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmegaA1, ATxmegaA1U, ATxmega128A3, ATxmega192A3, ATxmega256A3, ATxmegaA3B, ATxmega16D4, ATxmega32D4, ATxmega64D3, ATxmega128D3,ATxmega192D3, ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega3250, ATmega325A, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861</td>
1751+ <td>ATxmega6A4, ATxmega32A4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmegaA1, ATxmegaA1U, ATxmega128A3, ATxmega192A3, ATxmega256A3, ATxmegaA3B, ATxmega16D4, ATxmega32D4, ATxmega64D3, ATxmega128D3,ATxmega192D3, ATmega640, ATmega1280, ATmega1281, ATmega128RFA1, ATmega2560, ATmega2561, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287, AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316, ATmega165, ATmega165P, ATmega325, ATmega325A, ATmega325PA, ATmega3250, ATmega3250A, ATmega3250PA, ATmega645, ATmega6450, ATmega169, ATmega169P, ATmega329, ATmega329A, ATmega3290, ATmega3290A, ATmega3290PA, ATmega649, ATmega6490, ATmega164P, ATmega324P, ATmega644, ATmega406, ATmega48, ATmega88, ATmega168, ATtiny24, ATtiny44, ATtiny84, ATtiny84A, ATtiny25, ATtiny45, ATtiny85, ATtiny261, ATtiny461, ATtiny861, ATxmega64B1, ATxmega128B1, ATxmega64B3, ATxmega128B3, ATxmega16A4U, ATxmega32A4U, ATxmega64A3U, ATxmega128A3U, ATxmega192A3U, ATxmega256A3U</td>
1752 </tr>
1753 </table>
1754 </center>
1755@@ -355,16 +355,27 @@ find out which macros are applicable to
1756 // Xmega A series has AES, EBI and DMA bits
1757 // Include any other device on need basis
1758 #if defined(__AVR_ATxmega16A4__) \
1759+|| defined(__AVR_ATxmega16A4U__) \
1760+|| defined(__AVR_ATxmega32A4U__) \
1761 || defined(__AVR_ATxmega32A4__) \
1762 || defined(__AVR_ATxmega64A1__) \
1763 || defined(__AVR_ATxmega64A1U__) \
1764 || defined(__AVR_ATxmega64A3__) \
1765+|| defined(__AVR_ATxmega64A3U__) \
1766+|| defined(__AVR_ATxmega64A4U__) \
1767 || defined(__AVR_ATxmega128A1__) \
1768 || defined(__AVR_ATxmega128A1U__) \
1769 || defined(__AVR_ATxmega128A3__) \
1770+|| defined(__AVR_ATxmega128A3U__) \
1771+|| defined(__AVR_ATxmega128A4U__) \
1772 || defined(__AVR_ATxmega192A3__) \
1773+|| defined(__AVR_ATxmega192A3U__) \
1774 || defined(__AVR_ATxmega256A3__) \
1775-|| defined(__AVR_ATxmega256A3B__)
1776+|| defined(__AVR_ATxmega256A3U__) \
1777+|| defined(__AVR_ATxmega256A3B__) \
1778+|| defined(__AVR_ATxmega256A3BU__) \
1779+|| defined(__AVR_ATxmega384C3__)
1780+
1781
1782 #define power_aes_enable() (PR_PRGEN &= (uint8_t)~(PR_AES_bm))
1783 #define power_aes_disable() (PR_PRGEN |= (uint8_t)PR_AES_bm)
1784@@ -389,6 +400,44 @@ find out which macros are applicable to
1785 #define power_usartf1_enable() (PR_PRPF &= (uint8_t)~(PR_USART1_bm))
1786 #define power_usartf1_disable() (PR_PRPF |= (uint8_t)PR_USART1_bm)
1787
1788+#if defined(__AVR_ATxmega384C3__) \
1789+|| defined(__AVR_ATxmega256A3BU__) \
1790+|| defined(__AVR_ATxmega16A4U__) \
1791+|| defined(__AVR_ATxmega32A4U__) \
1792+|| defined(__AVR_ATxmega64A3U__) \
1793+|| defined(__AVR_ATxmega64A4U__) \
1794+|| defined(__AVR_ATxmega128A3U__) \
1795+|| defined(__AVR_ATxmega128A4U__) \
1796+|| defined(__AVR_ATxmega192A3U__) \
1797+|| defined(__AVR_ATxmega256A3U__)
1798+
1799+#define power_usb_enable() (PR_PRGEN &= (uint8_t)~(PR_USB_bm))
1800+#define power_usb_disable() (PR_PRGEN &= (uint8_t)(PR_USB_bm))
1801+
1802+#define power_all_enable() \
1803+do { \
1804+ PR_PRGEN &= (uint8_t)~(PR_AES_bm|PR_EBI_bm|PR_RTC_bm|PR_EVSYS_bm|PR_DMA_bm|PR_USB_bm); \
1805+ PR_PRPA &= (uint8_t)~(PR_DAC_bm|PR_ADC_bm|PR_AC_bm); \
1806+ PR_PRPB &= (uint8_t)~(PR_DAC_bm|PR_ADC_bm|PR_AC_bm); \
1807+ PR_PRPC &= (uint8_t)~(PR_TWI_bm|PR_USART1_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
1808+ PR_PRPD &= (uint8_t)~(PR_TWI_bm|PR_USART1_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
1809+ PR_PRPE &= (uint8_t)~(PR_TWI_bm|PR_USART1_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
1810+ PR_PRPF &= (uint8_t)~(PR_TWI_bm|PR_USART1_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
1811+} while(0)
1812+
1813+#define power_all_disable() \
1814+do { \
1815+ PR_PRGEN |= (uint8_t)(PR_AES_bm|PR_EBI_bm|PR_RTC_bm|PR_EVSYS_bm|PR_DMA_bm|PR_USB_bm); \
1816+ PR_PRPA |= (uint8_t)(PR_DAC_bm|PR_ADC_bm|PR_AC_bm); \
1817+ PR_PRPB |= (uint8_t)(PR_DAC_bm|PR_ADC_bm|PR_AC_bm); \
1818+ PR_PRPC |= (uint8_t)(PR_TWI_bm|PR_USART1_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
1819+ PR_PRPD |= (uint8_t)(PR_TWI_bm|PR_USART1_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
1820+ PR_PRPE |= (uint8_t)(PR_TWI_bm|PR_USART1_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
1821+ PR_PRPF |= (uint8_t)(PR_TWI_bm|PR_USART1_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
1822+} while(0)
1823+
1824+#else
1825+
1826 #define power_all_enable() \
1827 do { \
1828 PR_PRGEN &= (uint8_t)~(PR_AES_bm|PR_EBI_bm|PR_RTC_bm|PR_EVSYS_bm|PR_DMA_bm); \
1829@@ -413,22 +462,121 @@ do { \
1830 } while(0)
1831 #endif
1832
1833+#endif
1834+
1835+#if defined(__AVR_ATxmega16C4__) \
1836+|| defined(__AVR_ATxmega32C4__) \
1837+|| defined(__AVR_ATxmega64C3__) \
1838+|| defined(__AVR_ATxmega128C3__) \
1839+|| defined(__AVR_ATxmega192C3__) \
1840+|| defined(__AVR_ATxmega256C3__)
1841+
1842+#define power_usb_enable() (PR_PRGEN &= (uint8_t)~(PR_USB_bm))
1843+#define power_usb_disable() (PR_PRGEN &= (uint8_t)(PR_USB_bm))
1844+
1845+#define power_aes_enable() (PR_PRGEN &= (uint8_t)~(PR_AES_bm))
1846+#define power_aes_disable() (PR_PRGEN |= (uint8_t)PR_AES_bm)
1847+
1848+#define power_rtc_enable() (PR_PRGEN &= (uint8_t)~(PR_RTC_bm))
1849+#define power_rtc_disable() (PR_PRGEN |= (uint8_t)PR_RTC_bm)
1850+
1851+#define power_evsys_enable() (PR_PRGEN &= (uint8_t)~(PR_EVSYS_bm))
1852+#define power_evsys_disable() (PR_PRGEN |= (uint8_t)PR_EVSYS_bm)
1853+
1854+#define power_dma_enable() (PR_PRGEN &= (uint8_t)~(PR_DMA_bm))
1855+#define power_dma_disable() (PR_PRGEN |= (uint8_t)PR_DMA_bm)
1856+
1857+#define power_adca_enable() (PR_PRPA &= (uint8_t)~(PR_ADC_bm))
1858+#define power_adca_disable() (PR_PRPA |= (uint8_t)PR_ADC_bm)
1859+
1860+#define power_aca_enable() (PR_PRPA &= (uint8_t)~(PR_AC_bm))
1861+#define power_aca_disable() (PR_PRPA |= (uint8_t)PR_AC_bm)
1862+
1863+#define power_twic_enable() (PR_PRPC &= (uint8_t)~(PR_TWI_bm))
1864+#define power_twic_disable() (PR_PRPC |= (uint8_t)PR_TWI_bm)
1865+#define power_twie_enable() (PR_PRPE &= (uint8_t)~(PR_TWI_bm))
1866+#define power_twie_disable() (PR_PRPE |= (uint8_t)PR_TWI_bm)
1867+
1868+#define power_usartc1_enable() (PR_PRPC &= (uint8_t)~(PR_USART1_bm))
1869+#define power_usartc1_disable() (PR_PRPC |= (uint8_t)PR_USART1_bm)
1870+
1871+#define power_usartc0_enable() (PR_PRPC &= (uint8_t)~(PR_USART0_bm))
1872+#define power_usartc0_disable() (PR_PRPC |= (uint8_t)PR_USART0_bm)
1873+#define power_usartd0_enable() (PR_PRPD &= (uint8_t)~(PR_USART0_bm))
1874+#define power_usartd0_disable() (PR_PRPD |= (uint8_t)PR_USART0_bm)
1875+#define power_usarte0_enable() (PR_PRPE &= (uint8_t)~(PR_USART0_bm))
1876+#define power_usarte0_disable() (PR_PRPE |= (uint8_t)PR_USART0_bm)
1877+#define power_usartf0_enable() (PR_PRPF &= (uint8_t)~(PR_USART0_bm))
1878+#define power_usartf0_disable() (PR_PRPF |= (uint8_t)PR_USART0_bm)
1879+
1880+#define power_spic_enable() (PR_PRPC &= (uint8_t)~(PR_SPI_bm))
1881+#define power_spic_disable() (PR_PRPC |= (uint8_t)PR_SPI_bm)
1882+#define power_spid_enable() (PR_PRPD &= (uint8_t)~(PR_SPI_bm))
1883+#define power_spid_disable() (PR_PRPD |= (uint8_t)PR_SPI_bm)
1884+
1885+#define power_hiresc_enable() (PR_PRPC &= (uint8_t)~(PR_HIRES_bm))
1886+#define power_hiresc_disable() (PR_PRPC |= (uint8_t)PR_HIRES_bm)
1887+
1888+#define power_tc1c_enable() (PR_PRPC &= (uint8_t)~(PR_TC1_bm))
1889+#define power_tc1c_disable() (PR_PRPC |= (uint8_t)PR_TC1_bm)
1890+
1891+#define power_tc0c_enable() (PR_PRPC &= (uint8_t)~(PR_TC0_bm))
1892+#define power_tc0c_disable() (PR_PRPC |= (uint8_t)PR_TC0_bm)
1893+#define power_tc0d_enable() (PR_PRPD &= (uint8_t)~(PR_TC0_bm))
1894+#define power_tc0d_disable() (PR_PRPD |= (uint8_t)PR_TC0_bm)
1895+#define power_tc0e_enable() (PR_PRPE &= (uint8_t)~(PR_TC0_bm))
1896+#define power_tc0e_disable() (PR_PRPE |= (uint8_t)PR_TC0_bm)
1897+#define power_tc0f_enable() (PR_PRPF &= (uint8_t)~(PR_TC0_bm))
1898+#define power_tc0f_disable() (PR_PRPF |= (uint8_t)PR_TC0_bm)
1899+
1900+#define power_all_enable() \
1901+do { \
1902+ PR_PRGEN &= (uint8_t)~(PR_USB_bm|PR_AES_bm|PR_DMA_bm|PR_RTC_bm|PR_EVSYS_bm); \
1903+ PR_PRPA &= (uint8_t)~(PR_ADC_bm|PR_AC_bm); \
1904+ PR_PRPC &= (uint8_t)~(PR_TWI_bm|PR_USART0_bm|PR_USART1_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
1905+ PR_PRPD &= (uint8_t)~(PR_USART0_bm|PR_SPI_bm|PR_TC0_bm); \
1906+ PR_PRPE &= (uint8_t)~(PR_TWI_bm|PR_USART0_bm|PR_TC0_bm); \
1907+ PR_PRPF &= (uint8_t)~(PR_USART0_bm|PR_TC0_bm); \
1908+ } while(0)
1909+
1910+#define power_all_disable() \
1911+do { \
1912+ PR_PRGEN |= (uint8_t)(PR_USB_bm|PR_AES_bm|PR_DMA_bm|PR_RTC_bm|PR_EVSYS_bm); \
1913+ PR_PRPA |= (uint8_t)(PR_ADC_bm|PR_AC_bm); \
1914+ PR_PRPC |= (uint8_t)(PR_TWI_bm|PR_USART0_bm|PR_USART1_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
1915+ PR_PRPD |= (uint8_t)(PR_USART0_bm|PR_SPI_bm|PR_TC0_bm); \
1916+ PR_PRPE |= (uint8_t)(PR_TWI_bm|PR_USART0_bm|PR_TC0_bm); \
1917+ PR_PRPF |= (uint8_t)(PR_USART0_bm|PR_TC0_bm); \
1918+ } while(0)
1919+
1920+#endif
1921+
1922 #if defined(__AVR_ATxmega16A4__) \
1923+|| defined(__AVR_ATxmega16A4U__) \
1924 || defined(__AVR_ATxmega16D4__) \
1925 || defined(__AVR_ATxmega32A4__) \
1926+|| defined(__AVR_ATxmega32A4U__) \
1927 || defined(__AVR_ATxmega32D4__) \
1928 || defined(__AVR_ATxmega64A1__) \
1929 || defined(__AVR_ATxmega64A1U__) \
1930 || defined(__AVR_ATxmega64A3__) \
1931+|| defined(__AVR_ATxmega64A3U__) \
1932+|| defined(__AVR_ATxmega64A4U__) \
1933 || defined(__AVR_ATxmega64D3__) \
1934 || defined(__AVR_ATxmega128A1__) \
1935 || defined(__AVR_ATxmega128A1U__) \
1936 || defined(__AVR_ATxmega128A3__) \
1937+|| defined(__AVR_ATxmega128A3U__) \
1938+|| defined(__AVR_ATxmega128A4U__) \
1939 || defined(__AVR_ATxmega128D3__) \
1940 || defined(__AVR_ATxmega192A3__) \
1941+|| defined(__AVR_ATxmega192A3U__) \
1942 || defined(__AVR_ATxmega192D3__) \
1943 || defined(__AVR_ATxmega256A3__) \
1944-|| defined(__AVR_ATxmega256A3B__)
1945+|| defined(__AVR_ATxmega256A3U__) \
1946+|| defined(__AVR_ATxmega256A3B__) \
1947+|| defined(__AVR_ATxmega256A3BU__) \
1948+|| defined(__AVR_ATxmega384C3__)
1949
1950
1951 #define power_rtc_enable() (PR_PRGEN &= (uint8_t)~(PR_RTC_bm))
1952@@ -503,6 +651,77 @@ do { \
1953
1954 #endif
1955
1956+#if defined(__AVR_ATxmega64D4__) \
1957+|| defined(__AVR_ATxmega128D4__)
1958+
1959+#define power_rtc_enable() (PR_PRGEN &= (uint8_t)~(PR_RTC_bm))
1960+#define power_rtc_disable() (PR_PRGEN |= (uint8_t)PR_RTC_bm)
1961+
1962+#define power_evsys_enable() (PR_PRGEN &= (uint8_t)~(PR_EVSYS_bm))
1963+#define power_evsys_disable() (PR_PRGEN |= (uint8_t)PR_EVSYS_bm)
1964+
1965+#define power_adca_enable() (PR_PRPA &= (uint8_t)~(PR_ADC_bm))
1966+#define power_adca_disable() (PR_PRPA |= (uint8_t)PR_ADC_bm)
1967+
1968+#define power_aca_enable() (PR_PRPA &= (uint8_t)~(PR_AC_bm))
1969+#define power_aca_disable() (PR_PRPA |= (uint8_t)PR_AC_bm)
1970+
1971+#define power_twic_enable() (PR_PRPC &= (uint8_t)~(PR_TWI_bm))
1972+#define power_twic_disable() (PR_PRPC |= (uint8_t)PR_TWI_bm)
1973+#define power_twie_enable() (PR_PRPE &= (uint8_t)~(PR_TWI_bm))
1974+#define power_twie_disable() (PR_PRPE |= (uint8_t)PR_TWI_bm)
1975+
1976+#define power_usartc0_enable() (PR_PRPC &= (uint8_t)~(PR_USART0_bm))
1977+#define power_usartc0_disable() (PR_PRPC |= (uint8_t)PR_USART0_bm)
1978+#define power_usartd0_enable() (PR_PRPD &= (uint8_t)~(PR_USART0_bm))
1979+#define power_usartd0_disable() (PR_PRPD |= (uint8_t)PR_USART0_bm)
1980+#define power_usarte0_enable() (PR_PRPE &= (uint8_t)~(PR_USART0_bm))
1981+#define power_usarte0_disable() (PR_PRPE |= (uint8_t)PR_USART0_bm)
1982+#define power_usartf0_enable() (PR_PRPF &= (uint8_t)~(PR_USART0_bm))
1983+#define power_usartf0_disable() (PR_PRPF |= (uint8_t)PR_USART0_bm)
1984+
1985+#define power_spic_enable() (PR_PRPC &= (uint8_t)~(PR_SPI_bm))
1986+#define power_spic_disable() (PR_PRPC |= (uint8_t)PR_SPI_bm)
1987+#define power_spid_enable() (PR_PRPD &= (uint8_t)~(PR_SPI_bm))
1988+#define power_spid_disable() (PR_PRPD |= (uint8_t)PR_SPI_bm)
1989+
1990+#define power_hiresc_enable() (PR_PRPC &= (uint8_t)~(PR_HIRES_bm))
1991+#define power_hiresc_disable() (PR_PRPC |= (uint8_t)PR_HIRES_bm)
1992+
1993+#define power_tc1c_enable() (PR_PRPC &= (uint8_t)~(PR_TC1_bm))
1994+#define power_tc1c_disable() (PR_PRPC |= (uint8_t)PR_TC1_bm)
1995+
1996+#define power_tc0c_enable() (PR_PRPC &= (uint8_t)~(PR_TC0_bm))
1997+#define power_tc0c_disable() (PR_PRPC |= (uint8_t)PR_TC0_bm)
1998+#define power_tc0d_enable() (PR_PRPD &= (uint8_t)~(PR_TC0_bm))
1999+#define power_tc0d_disable() (PR_PRPD |= (uint8_t)PR_TC0_bm)
2000+#define power_tc0e_enable() (PR_PRPE &= (uint8_t)~(PR_TC0_bm))
2001+#define power_tc0e_disable() (PR_PRPE |= (uint8_t)PR_TC0_bm)
2002+#define power_tc0f_enable() (PR_PRPF &= (uint8_t)~(PR_TC0_bm))
2003+#define power_tc0f_disable() (PR_PRPF |= (uint8_t)PR_TC0_bm)
2004+
2005+#define power_all_enable() \
2006+do { \
2007+ PR_PRGEN &= (uint8_t)~(PR_RTC_bm|PR_EVSYS_bm); \
2008+ PR_PRPA &= (uint8_t)~(PR_ADC_bm|PR_AC_bm); \
2009+ PR_PRPC &= (uint8_t)~(PR_TWI_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
2010+ PR_PRPD &= (uint8_t)~(PR_USART0_bm|PR_SPI_bm|PR_TC0_bm); \
2011+ PR_PRPE &= (uint8_t)~(PR_TWI_bm|PR_USART0_bm|PR_TC0_bm); \
2012+ PR_PRPF &= (uint8_t)~(PR_USART0_bm|PR_TC0_bm); \
2013+ } while(0)
2014+
2015+#define power_all_disable() \
2016+do { \
2017+ PR_PRGEN |= (uint8_t)(PR_RTC_bm|PR_EVSYS_bm); \
2018+ PR_PRPA |= (uint8_t)(PR_ADC_bm|PR_AC_bm); \
2019+ PR_PRPC |= (uint8_t)(PR_TWI_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
2020+ PR_PRPD |= (uint8_t)(PR_USART0_bm|PR_SPI_bm|PR_TC0_bm); \
2021+ PR_PRPE |= (uint8_t)(PR_TWI_bm|PR_USART0_bm|PR_TC0_bm); \
2022+ PR_PRPF |= (uint8_t)(PR_USART0_bm|PR_TC0_bm); \
2023+ } while(0)
2024+
2025+#endif
2026+
2027 #if defined(__AVR_ATxmega16D4__) \
2028 || defined(__AVR_ATxmega32D4__) \
2029 || defined(__AVR_ATxmega64D3__) \
2030@@ -532,6 +751,78 @@ do { \
2031 PR_PRPF |= (uint8_t)(PR_TWI_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
2032 } while(0)
2033
2034+#elif defined (__AVR_ATxmega64B1__) \
2035+|| defined (__AVR_ATxmega64B3__) \
2036+|| defined (__AVR_ATxmega128B1__) \
2037+|| defined (__AVR_ATxmega128B3__)
2038+#define power_lcd_enable() (PR_PRGEN &= (uint8_t)~(PR_LCD_bm))
2039+#define power_lcd_disable() (PR_PRGEN |= (uint8_t)PR_LCD_bm)
2040+
2041+#define power_usb_enable() (PR_PRGEN &= (uint8_t)~(PR_USB_bm))
2042+#define power_usb_disable() (PR_PRGEN |= (uint8_t)PR_USB_bm)
2043+
2044+#define power_aes_enable() (PR_PRGEN &= (uint8_t)~(PR_AES_bm))
2045+#define power_aes_disable() (PR_PRGEN |= (uint8_t)PR_AES_bm)
2046+
2047+#define power_rtc_enable() (PR_PRGEN &= (uint8_t)~(PR_RTC_bm))
2048+#define power_rtc_disable() (PR_PRGEN |= (uint8_t)PR_RTC_bm)
2049+
2050+#define power_evsys_enable() (PR_PRGEN &= (uint8_t)~(PR_EVSYS_bm))
2051+#define power_evsys_disable() (PR_PRGEN |= (uint8_t)PR_EVSYS_bm)
2052+
2053+#define power_dma_enable() (PR_PRGEN &= (uint8_t)~(PR_DMA_bm))
2054+#define power_dma_disable() (PR_PRGEN |= (uint8_t)PR_DMA_bm)
2055+
2056+#define power_adca_enable() (PR_PRPA &= (uint8_t)~(PR_ADC_bm))
2057+#define power_adca_disable() (PR_PRPA |= (uint8_t)PR_ADC_bm)
2058+#define power_adcb_enable() (PR_PRPB &= (uint8_t)~(PR_ADC_bm))
2059+#define power_adcb_disable() (PR_PRPB |= (uint8_t)PR_ADC_bm)
2060+
2061+#define power_aca_enable() (PR_PRPA &= (uint8_t)~(PR_AC_bm))
2062+#define power_aca_disable() (PR_PRPA |= (uint8_t)PR_AC_bm)
2063+#define power_acb_enable() (PR_PRPB &= (uint8_t)~(PR_AC_bm))
2064+#define power_acb_disable() (PR_PRPB |= (uint8_t)PR_AC_bm)
2065+
2066+#define power_twic_enable() (PR_PRPC &= (uint8_t)~(PR_TWI_bm))
2067+#define power_twic_disable() (PR_PRPC |= (uint8_t)PR_TWI_bm)
2068+
2069+#define power_usartc0_enable() (PR_PRPC &= (uint8_t)~(PR_USART0_bm))
2070+#define power_usartc0_disable() (PR_PRPC |= (uint8_t)PR_USART0_bm)
2071+#define power_usarte0_enable() (PR_PRPE &= (uint8_t)~(PR_USART0_bm))
2072+#define power_usarte0_disable() (PR_PRPE |= (uint8_t)PR_USART0_bm)
2073+
2074+#define power_spic_enable() (PR_PRPC &= (uint8_t)~(PR_SPI_bm))
2075+#define power_spic_disable() (PR_PRPC |= (uint8_t)PR_SPI_bm)
2076+
2077+#define power_hiresc_enable() (PR_PRPC &= (uint8_t)~(PR_HIRES_bm))
2078+#define power_hiresc_disable() (PR_PRPC |= (uint8_t)PR_HIRES_bm)
2079+
2080+#define power_tc1c_enable() (PR_PRPC &= (uint8_t)~(PR_TC1_bm))
2081+#define power_tc1c_disable() (PR_PRPC |= (uint8_t)PR_TC1_bm)
2082+
2083+#define power_tc0c_enable() (PR_PRPC &= (uint8_t)~(PR_TC0_bm))
2084+#define power_tc0c_disable() (PR_PRPC |= (uint8_t)PR_TC0_bm)
2085+#define power_tc0e_enable() (PR_PRPE &= (uint8_t)~(PR_TC0_bm))
2086+#define power_tc0e_disable() (PR_PRPE |= (uint8_t)PR_TC0_bm)
2087+
2088+#define power_all_enable() \
2089+do { \
2090+ PR_PRGEN &= (uint8_t)~(PR_LCD_bm|PR_USB_bm|PR_AES_bm|PR_RTC_bm|PR_EVSYS_bm|PR_DMA_bm); \
2091+ PR_PRPA &= (uint8_t)~(PR_ADC_bm|PR_AC_bm); \
2092+ PR_PRPB &= (uint8_t)~(PR_ADC_bm|PR_AC_bm); \
2093+ PR_PRPC &= (uint8_t)~(PR_TWI_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
2094+ PR_PRPE &= (uint8_t)~(PR_USART0_bm|PR_TC0_bm); \
2095+ } while(0)
2096+
2097+#define power_all_disable() \
2098+do { \
2099+ PR_PRGEN |= (uint8_t)(PR_LCD_bm|PR_USB_bm|PR_AES_bm|PR_RTC_bm|PR_EVSYS_bm|PR_DMA_bm); \
2100+ PR_PRPA |= (uint8_t)(PR_ADC_bm|PR_AC_bm); \
2101+ PR_PRPB |= (uint8_t)(PR_ADC_bm|PR_AC_bm); \
2102+ PR_PRPC |= (uint8_t)(PR_TWI_bm|PR_USART0_bm|PR_SPI_bm|PR_HIRES_bm|PR_TC1_bm|PR_TC0_bm); \
2103+ PR_PRPE |= (uint8_t)(PR_USART0_bm|PR_TC0_bm); \
2104+ } while(0)
2105+
2106 #elif defined(__AVR_ATmega640__) \
2107 || defined(__AVR_ATmega1280__) \
2108 || defined(__AVR_ATmega1281__) \
2109@@ -841,7 +1132,8 @@ do{ \
2110 #define power_all_disable() (PRR |= (uint8_t)((1<<PRADC)|(1<<PRSPI)|(1<<PRUSART)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRPSC0)|(1<<PRPSC1)|(1<<PRPSC2)))
2111
2112
2113-#elif defined(__AVR_AT90PWM81__)
2114+#elif defined(__AVR_AT90PWM81__) \
2115+|| defined(__AVR_AT90PWM161__)
2116
2117 #define power_adc_enable() (PRR &= (uint8_t)~(1 << PRADC))
2118 #define power_adc_disable() (PRR |= (uint8_t)(1 << PRADC))
2119@@ -867,10 +1159,13 @@ do{ \
2120 #elif defined(__AVR_ATmega165__) \
2121 || defined(__AVR_ATmega165A__) \
2122 || defined(__AVR_ATmega165P__) \
2123+|| defined(__AVR_ATmega165PA__) \
2124 || defined(__AVR_ATmega325__) \
2125 || defined(__AVR_ATmega325A__) \
2126+|| defined(__AVR_ATmega325PA__) \
2127 || defined(__AVR_ATmega3250__) \
2128 || defined(__AVR_ATmega3250A__) \
2129+|| defined(__AVR_ATmega3250PA__) \
2130 || defined(__AVR_ATmega645__) \
2131 || defined(__AVR_ATmega645A__) \
2132 || defined(__AVR_ATmega645P__) \
2133@@ -905,6 +1200,7 @@ do{ \
2134 || defined(__AVR_ATmega3290__) \
2135 || defined(__AVR_ATmega3290A__) \
2136 || defined(__AVR_ATmega3290P__) \
2137+|| defined(__AVR_ATmega3290PA__) \
2138 || defined(__AVR_ATmega649__) \
2139 || defined(__AVR_ATmega649A__) \
2140 || defined(__AVR_ATmega649P__) \
2141@@ -968,7 +1264,8 @@ do{ \
2142 #define power_all_disable() (PRR0 |= (uint8_t)((1<<PRADC)|(1<<PRSPI)|(1<<PRUSART0)|(1<<PRUSART1)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRTIM2)|(1<<PRTWI)))
2143
2144
2145-#elif defined(__AVR_ATmega644__)
2146+#elif defined(__AVR_ATmega644__) \
2147+|| defined(__AVR_ATmega164PA__)
2148
2149 #define power_adc_enable() (PRR0 &= (uint8_t)~(1 << PRADC))
2150 #define power_adc_disable() (PRR0 |= (uint8_t)(1 << PRADC))
2151@@ -1016,6 +1313,7 @@ do{ \
2152
2153 #elif defined(__AVR_ATmega48__) \
2154 || defined(__AVR_ATmega48A__) \
2155+|| defined(__AVR_ATmega48PA__) \
2156 || defined(__AVR_ATmega48P__) \
2157 || defined(__AVR_ATmega88__) \
2158 || defined(__AVR_ATmega88A__) \
2159@@ -1024,10 +1322,12 @@ do{ \
2160 || defined(__AVR_ATmega168__) \
2161 || defined(__AVR_ATmega168A__) \
2162 || defined(__AVR_ATmega168P__) \
2163+|| defined(__AVR_ATmega168PA__) \
2164 || defined(__AVR_ATmega328__) \
2165 || defined(__AVR_ATmega328P__) \
2166 || defined(__AVR_ATtiny48__) \
2167-|| defined(__AVR_ATtiny88__)
2168+|| defined(__AVR_ATtiny88__) \
2169+|| defined(__AVR_ATtiny828__)
2170
2171 #define power_adc_enable() (PRR &= (uint8_t)~(1 << PRADC))
2172 #define power_adc_disable() (PRR |= (uint8_t)(1 << PRADC))
2173@@ -1044,15 +1344,27 @@ do{ \
2174 #define power_timer1_enable() (PRR &= (uint8_t)~(1 << PRTIM1))
2175 #define power_timer1_disable() (PRR |= (uint8_t)(1 << PRTIM1))
2176
2177+#if !defined(__AVR_ATtiny828__)
2178+
2179 #define power_timer2_enable() (PRR &= (uint8_t)~(1 << PRTIM2))
2180 #define power_timer2_disable() (PRR |= (uint8_t)(1 << PRTIM2))
2181
2182+#endif
2183+
2184 #define power_twi_enable() (PRR &= (uint8_t)~(1 << PRTWI))
2185 #define power_twi_disable() (PRR |= (uint8_t)(1 << PRTWI))
2186
2187+#if defined(__AVR_ATtiny828__)
2188+
2189+#define power_all_enable() (PRR &= (uint8_t)~((1<<PRADC)|(1<<PRSPI)|(1<<PRUSART0)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRTWI)))
2190+#define power_all_disable() (PRR |= (uint8_t)((1<<PRADC)|(1<<PRSPI)|(1<<PRUSART0)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRTWI)))
2191+
2192+#else
2193+
2194 #define power_all_enable() (PRR &= (uint8_t)~((1<<PRADC)|(1<<PRSPI)|(1<<PRUSART0)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRTIM2)|(1<<PRTWI)))
2195 #define power_all_disable() (PRR |= (uint8_t)((1<<PRADC)|(1<<PRSPI)|(1<<PRUSART0)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRTIM2)|(1<<PRTWI)))
2196
2197+#endif
2198
2199 #elif defined(__AVR_ATtiny24__) \
2200 || defined(__AVR_ATtiny24A__) \
2201@@ -1087,6 +1399,43 @@ do{ \
2202 #define power_all_enable() (PRR &= (uint8_t)~((1<<PRADC)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRUSI)))
2203 #define power_all_disable() (PRR |= (uint8_t)((1<<PRADC)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRUSI)))
2204
2205+#elif defined(__AVR_ATmega1284__)
2206+
2207+#define power_adc_enable() (PRR0 &= (uint8_t)~(1 << PRADC))
2208+#define power_adc_disable() (PRR0 |= (uint8_t)(1 << PRADC))
2209+
2210+#define power_spi_enable() (PRR0 &= (uint8_t)~(1 << PRSPI))
2211+#define power_spi_disable() (PRR0 |= (uint8_t)(1 << PRSPI))
2212+
2213+#define power_twi_enable() (PRR0 &= (uint8_t)~(1 << PRTWI))
2214+#define power_twi_disable() (PRR0 |= (uint8_t)(1 << PRTWI))
2215+
2216+#define power_timer0_enable() (PRR0 &= (uint8_t)~(1 << PRTIM0))
2217+#define power_timer0_disable() (PRR0 |= (uint8_t)(1 << PRTIM0))
2218+
2219+#define power_timer1_enable() (PRR0 &= (uint8_t)~(1 << PRTIM1))
2220+#define power_timer1_disable() (PRR0 |= (uint8_t)(1 << PRTIM1))
2221+
2222+#define power_timer2_enable() (PRR0 &= (uint8_t)~(1 << PRTIM2))
2223+#define power_timer2_disable() (PRR0 |= (uint8_t)(1 << PRTIM2))
2224+
2225+#define power_timer3_enable() (PRR1 &= (uint8_t)~(1 << PRTIM3))
2226+#define power_timer3_disable() (PRR1 |= (uint8_t)(1 << PRTIM3))
2227+
2228+#define power_usart0_enable() (PRR0 &= (uint8_t)~(1 << PRUSART0))
2229+#define power_usart0_disable() (PRR0 |= (uint8_t)(1 << PRUSART0))
2230+
2231+#define power_all_enable() \
2232+do{ \
2233+ PRR0 &= (uint8_t)~((1<<PRADC)|(1<<PRSPI)|(1<<PRTWI)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRTIM2)|(1<<PRUSART0)); \
2234+ PRR1 &= (uint8_t)~(1<<PRTIM3); \
2235+}while(0)
2236+
2237+#define power_all_disable() \
2238+do{ \
2239+ PRR0 |= (uint8_t)((1<<PRADC)|(1<<PRSPI)|(1<<PRTWI)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRTIM2)|(1<<PRUSART0)); \
2240+ PRR1 |= (uint8_t)(1<<PRTIM3); \
2241+}while(0)
2242
2243 #elif defined(__AVR_ATmega1284P__)
2244
2245@@ -1160,6 +1509,70 @@ do{ \
2246 #define power_all_disable() (PRR0 |= (uint8_t)((1<<PRTWI)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRVADC)|(1<<PRSPI)|(1<<PRVRM)))
2247
2248
2249+#elif defined (__AVR_ATA5790__) \
2250+|| defined (__AVR_ATA5795__)
2251+
2252+// Enable the voltage monitor
2253+#define power_vmonitor_enable() (PRR0 &= (uint8_t)~(1 << PRVM))
2254+#define power_vmonitor_disable() (PRR0 |= (uint8_t)(1 << PRVM))
2255+
2256+#define power_irdriver_enable() (PRR0 &= (uint8_t)~(1 << PRDS))
2257+#define power_irdriver_disable() (PRR0 |= (uint8_t)(1 << PRDS))
2258+
2259+#define power_crypto_enable() (PRR0 &= (uint8_t)~(1 << PRCU))
2260+#define power_crypto_disable() (PRR0 |= (uint8_t)(1 << PRCU))
2261+
2262+#define power_timermodulator_enable() (PRR0 &= (uint8_t)~(1 << PRTM))
2263+#define power_timermodulator_disable() (PRR0 |= (uint8_t)(1 << PRTM))
2264+
2265+#define power_timer1_enable() (PRR0 &= (uint8_t)~(1 << PRT1))
2266+#define power_timer1_disable() (PRR0 |= (uint8_t)(1 << PRT1))
2267+
2268+#define power_timer2_enable() (PRR0 &= (uint8_t)~(1 << PRT2))
2269+#define power_timer2_disable() (PRR0 |= (uint8_t)(1 << PRT2))
2270+
2271+#define power_timer3_enable() (PRR0 &= (uint8_t)~(1 << PRT3))
2272+#define power_timer3_disable() (PRR0 |= (uint8_t)(1 << PRT3))
2273+
2274+#define power_spi_enable() (PRR1 &= (uint8_t)~(1 << PRSPI))
2275+#define power_spi_disable() (PRR1 |= (uint8_t)(1 << PRSPI))
2276+
2277+#define power_cinterface_enable() (PRR1 &= (uint8_t)~(1 << PRCI))
2278+#define power_cinterface_disable() (PRR1 |= (uint8_t)(1 << PRCI))
2279+
2280+#if defined(__AVR_ATA5790__)
2281+
2282+#define power_lfreceiver_enable() (PRR0 &= (uint8_t)~(1 << PRLFR))
2283+#define power_lfreceiver_disable() (PRR0 |= (uint8_t)(1 << PRLFR))
2284+
2285+#define power_all_enable() \
2286+do{ \
2287+ PRR0 &= (uint8_t)~((1<<PRVM)|(1<<PRDS)|(1<<PRCU)|(1<<PRTM)|(1<<PRT3)|(1<<PRT2)|(1<<PRT1)|(1<<PRLFR)); \
2288+ PRR1 &= (uint8_t)~((1<<PRSPI)|(1<<PRCI)); \
2289+}while(0)
2290+
2291+#define power_all_disable() \
2292+do{ \
2293+ PRR0 |= (uint8_t)((1<<PRVM)|(1<<PRDS)|(1<<PRCU)|(1<<PRTM)|(1<<PRT3)|(1<<PRT2)|(1<<PRT1)|(1<<PRLFR)); \
2294+ PRR1 |= (uint8_t)((1<<PRSPI)|(1<<PRCI)); \
2295+}while(0)
2296+
2297+#elif defined(__AVR_ATA5795__)
2298+
2299+#define power_all_enable() \
2300+do{ \
2301+ PRR0 &= (uint8_t)~((1<<PRVM)|(1<<PRDS)|(1<<PRCU)|(1<<PRTM)|(1<<PRT3)|(1<<PRT2)|(1<<PRT1)); \
2302+ PRR1 &= (uint8_t)~((1<<PRSPI)|(1<<PRCI)); \
2303+}while(0)
2304+
2305+#define power_all_disable() \
2306+do{ \
2307+ PRR0 |= (uint8_t)((1<<PRVM)|(1<<PRDS)|(1<<PRCU)|(1<<PRTM)|(1<<PRT3)|(1<<PRT2)|(1<<PRT1)); \
2308+ PRR1 |= (uint8_t)((1<<PRSPI)|(1<<PRCI)); \
2309+}while(0)
2310+
2311+#endif
2312+
2313 #elif defined(__AVR_ATmega16M1__) \
2314 || defined(__AVR_ATmega32C1__) \
2315 || defined(__AVR_ATmega32M1__) \
2316@@ -1192,8 +1605,9 @@ do{ \
2317
2318
2319 #elif defined(__AVR_ATtiny167__) \
2320-|| defined(__AVR_ATtiny87__)
2321-
2322+|| defined(__AVR_ATtiny87__) \
2323+|| defined(__AVR_ATA5505__) \
2324+|| defined(__AVR_ATA5272__)
2325
2326 #define power_adc_enable() (PRR &= (uint8_t)~(1 << PRADC))
2327 #define power_adc_disable() (PRR |= (uint8_t)(1 << PRADC))
2328@@ -1217,6 +1631,33 @@ do{ \
2329 #define power_all_disable() (PRR |= (uint8_t)((1<<PRADC)|(1<<PRUSI)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRSPI)|(1<<PRLIN)))
2330
2331
2332+#elif defined(__AVR_ATtiny1634__)
2333+
2334+#define power_adc_enable() (PRR &= (uint8_t)~(1 << PRADC))
2335+#define power_adc_disable() (PRR |= (uint8_t)(1 << PRADC))
2336+
2337+#define power_usart0_enable() (PRR &= (uint8_t)~(1 << PRUSART0))
2338+#define power_usart0_disable() (PRR |= (uint8_t)(1 << PRUSART0))
2339+
2340+#define power_usart1_enable() (PRR &= (uint8_t)~(1 << PRUSART1))
2341+#define power_usart1_disable() (PRR |= (uint8_t)(1 << PRUSART1))
2342+
2343+#define power_usi_enable() (PRR &= (uint8_t)~(1 << PRUSI))
2344+#define power_usi_disable() (PRR |= (uint8_t)(1 << PRUSI))
2345+
2346+#define power_timer0_enable() (PRR &= (uint8_t)~(1 << PRTIM0))
2347+#define power_timer0_disable() (PRR |= (uint8_t)(1 << PRTIM0))
2348+
2349+#define power_timer1_enable() (PRR &= (uint8_t)~(1 << PRTIM1))
2350+#define power_timer1_disable() (PRR |= (uint8_t)(1 << PRTIM1))
2351+
2352+#define power_twi_enable() (PRR &= (uint8_t)~(1 << PRTWI))
2353+#define power_twi_disable() (PRR |= (uint8_t)(1 << PRTWI))
2354+
2355+#define power_all_enable() (PRR &= (uint8_t)~((1 << PRTWI)|(1 << PRUSI)|(1 << PRTIM0)|(1 << PRTIM1)|(1 << PRUSART0)|(1 << PRUSART1)|(1 << PRADC)))
2356+#define power_all_disable() (PRR |= (uint8_t)((1 << PRTWI)|(1 << PRUSI)|(1 << PRTIM0)|(1 << PRTIM1)|(1 << PRUSART0)|(1 << PRUSART1)|(1 << PRADC)))
2357+
2358+
2359 #elif defined(__AVR_AT90USB82__) \
2360 || defined(__AVR_AT90USB162__) \
2361 || defined(__AVR_ATmega8U2__) \
2362@@ -1350,6 +1791,8 @@ do{ \
2363 || defined(__AVR_AT90PWM2B__) \
2364 || defined(__AVR_AT90PWM3__) \
2365 || defined(__AVR_AT90PWM3B__) \
2366+|| defined(__AVR_AT90PWM81__) \
2367+|| defined(__AVR_AT90PWM161__) \
2368 || defined(__AVR_AT90PWM216__) \
2369 || defined(__AVR_AT90PWM316__) \
2370 || defined(__AVR_AT90SCR100__) \
2371@@ -1359,18 +1802,24 @@ do{ \
2372 || defined(__AVR_AT90USB1286__) \
2373 || defined(__AVR_AT90USB1287__) \
2374 || defined(__AVR_AT90USB162__) \
2375+|| defined(__AVR_ATA5505__) \
2376+|| defined(__AVR_ATA5272__) \
2377 || defined(__AVR_ATmega1280__) \
2378 || defined(__AVR_ATmega1281__) \
2379+|| defined(__AVR_ATmega1284__) \
2380 || defined(__AVR_ATmega128RFA1__) \
2381 || defined(__AVR_ATmega1284P__) \
2382 || defined(__AVR_ATmega162__) \
2383 || defined(__AVR_ATmega164A__) \
2384 || defined(__AVR_ATmega164P__) \
2385+|| defined(__AVR_ATmega164PA__) \
2386 || defined(__AVR_ATmega165__) \
2387 || defined(__AVR_ATmega165A__) \
2388 || defined(__AVR_ATmega165P__) \
2389+|| defined(__AVR_ATmega165PA__) \
2390 || defined(__AVR_ATmega168__) \
2391 || defined(__AVR_ATmega168P__) \
2392+|| defined(__AVR_ATmega168PA__) \
2393 || defined(__AVR_ATmega169__) \
2394 || defined(__AVR_ATmega169A__) \
2395 || defined(__AVR_ATmega169P__) \
2396@@ -1382,8 +1831,10 @@ do{ \
2397 || defined(__AVR_ATmega324P__) \
2398 || defined(__AVR_ATmega325__) \
2399 || defined(__AVR_ATmega325A__) \
2400+|| defined(__AVR_ATmega325PA__) \
2401 || defined(__AVR_ATmega3250__) \
2402 || defined(__AVR_ATmega3250A__) \
2403+|| defined(__AVR_ATmega3250PA__) \
2404 || defined(__AVR_ATmega328__) \
2405 || defined(__AVR_ATmega328P__) \
2406 || defined(__AVR_ATmega329__) \
2407@@ -1392,12 +1843,15 @@ do{ \
2408 || defined(__AVR_ATmega329PA__) \
2409 || defined(__AVR_ATmega3290__) \
2410 || defined(__AVR_ATmega3290A__) \
2411+|| defined(__AVR_ATmega3290PA__) \
2412 || defined(__AVR_ATmega32C1__) \
2413 || defined(__AVR_ATmega32M1__) \
2414 || defined(__AVR_ATmega32U2__) \
2415 || defined(__AVR_ATmega32U4__) \
2416 || defined(__AVR_ATmega32U6__) \
2417 || defined(__AVR_ATmega48__) \
2418+|| defined(__AVR_ATmega48A__) \
2419+|| defined(__AVR_ATmega48PA__) \
2420 || defined(__AVR_ATmega48P__) \
2421 || defined(__AVR_ATmega640__) \
2422 || defined(__AVR_ATmega649P__) \
2423@@ -1541,6 +1995,158 @@ void clock_prescale_set(clock_div_t __x)
2424
2425 #define clock_prescale_get() (clock_div_t)(CLKPR & (uint8_t)((1<<CLKPS0)|(1<<CLKPS1)))
2426
2427+#elif defined(__AVR_ATA5790__) \
2428+|| defined (__AVR_ATA5795__)
2429+
2430+typedef enum
2431+{
2432+ clock_div_1 = 0,
2433+ clock_div_2 = 1,
2434+ clock_div_4 = 2,
2435+ clock_div_8 = 3,
2436+ clock_div_16 = 4,
2437+ clock_div_32 = 5,
2438+ clock_div_64 = 6,
2439+ clock_div_128 = 7,
2440+} clock_div_t;
2441+
2442+static __inline__ void system_clock_prescale_set(clock_div_t) __attribute__((__always_inline__));
2443+
2444+void system_clock_prescale_set(clock_div_t __x)
2445+{
2446+ uint8_t __tmp = _BV(CLKPCE);
2447+ __asm__ __volatile__ (
2448+ "in __tmp_reg__,__SREG__" "\n\t"
2449+ "cli" "\n\t"
2450+ "out %1, %0" "\n\t"
2451+ "out %1, %2" "\n\t"
2452+ "out __SREG__, __tmp_reg__"
2453+ : /* no outputs */
2454+ : "d" (__tmp),
2455+ "I" (_SFR_IO_ADDR(CLKPR)),
2456+ "d" (__x)
2457+ : "r0");
2458+}
2459+
2460+#define system_clock_prescale_get() (clock_div_t)(CLKPR & (uint8_t)((1<<CLKPS0)|(1<<CLKPS1)|(1<<CLKPS2)))
2461+
2462+typedef enum
2463+{
2464+ timer_clock_div_reset = 0,
2465+ timer_clock_div_1 = 1,
2466+ timer_clock_div_2 = 2,
2467+ timer_clock_div_4 = 3,
2468+ timer_clock_div_8 = 4,
2469+ timer_clock_div_16 = 5,
2470+ timer_clock_div_32 = 6,
2471+ timer_clock_div_64 = 7
2472+} timer_clock_div_t;
2473+
2474+static __inline__ void timer_clock_prescale_set(timer_clock_div_t) __attribute__((__always_inline__));
2475+
2476+void timer_clock_prescale_set(timer_clock_div_t __x)
2477+{
2478+ uint8_t __t;
2479+ __asm__ __volatile__ (
2480+ "in __tmp_reg__,__SREG__" "\n\t"
2481+ "cli" "\n\t"
2482+ "in %[temp],%[clkpr]" "\n\t"
2483+ "out %[clkpr],%[enable]" "\n\t"
2484+ "andi %[temp],%[not_CLTPS]" "\n\t"
2485+ "or %[temp], %[set_value]" "\n\t"
2486+ "out %[clkpr],%[temp]" "\n\t"
2487+ "sei" "\n\t"
2488+ "out __SREG__,__tmp_reg__" "\n\t"
2489+ : /* no outputs */
2490+ : [temp] "r" (__t),
2491+ [clkpr] "I" (_SFR_IO_ADDR(CLKPR)),
2492+ [enable] "r" (_BV(CLKPCE)),
2493+ [not_CLTPS] "M" (0xFF & (~ ((1 << CLTPS2) | (1 << CLTPS1) | (1 << CLTPS0)))),
2494+ [set_value] "r" ((__x & 7) << 3)
2495+ : "r0");
2496+}
2497+
2498+#define timer_clock_prescale_get() (timer_clock_div_t)(CLKPR & (uint8_t)((1<<CLTPS0)|(1<<CLTPS1)|(1<<CLTPS2)))
2499+
2500+#elif defined(__AVR_ATA6285__) \
2501+|| defined(__AVR_ATA6286__)
2502+
2503+typedef enum
2504+{
2505+ clock_div_1 = 0,
2506+ clock_div_2 = 1,
2507+ clock_div_4 = 2,
2508+ clock_div_8 = 3,
2509+ clock_div_16 = 4,
2510+ clock_div_32 = 5,
2511+ clock_div_64 = 6,
2512+ clock_div_128 = 7
2513+} clock_div_t;
2514+
2515+static __inline__ void system_clock_prescale_set(clock_div_t) __attribute__((__always_inline__));
2516+
2517+void system_clock_prescale_set(clock_div_t __x)
2518+{
2519+ uint8_t __t;
2520+ __asm__ __volatile__ (
2521+ "in __tmp_reg__,__SREG__" "\n\t"
2522+ "cli" "\n\t"
2523+ "in %[temp],%[clpr]" "\n\t"
2524+ "out %[clpr],%[enable]" "\n\t"
2525+ "andi %[temp],%[not_CLKPS]" "\n\t"
2526+ "or %[temp], %[set_value]" "\n\t"
2527+ "out %[clpr],%[temp]" "\n\t"
2528+ "sei" "\n\t"
2529+ "out __SREG__,__tmp_reg__" "\n\t"
2530+ : /* no outputs */
2531+ : [temp] "r" (__t),
2532+ [clpr] "I" (_SFR_IO_ADDR(CLKPR)),
2533+ [enable] "r" _BV(CLPCE),
2534+ [not_CLKPS] "M" (0xFF & (~ ((1 << CLKPS2) | (1 << CLKPS1) | (1 << CLKPS0)))),
2535+ [set_value] "r" (__x & 7)
2536+ : "r0");
2537+}
2538+
2539+#define system_clock_prescale_get() (clock_div_t)(CLKPR & (uint8_t)((1<<CLKPS0)|(1<<CLKPS1)|(1<<CLKPS2)))
2540+
2541+typedef enum
2542+{
2543+ timer_clock_div_reset = 0,
2544+ timer_clock_div_1 = 1,
2545+ timer_clock_div_2 = 2,
2546+ timer_clock_div_4 = 3,
2547+ timer_clock_div_8 = 4,
2548+ timer_clock_div_16 = 5,
2549+ timer_clock_div_32 = 6,
2550+ timer_clock_div_64 = 7
2551+} timer_clock_div_t;
2552+
2553+static __inline__ void timer_clock_prescale_set(timer_clock_div_t) __attribute__((__always_inline__));
2554+
2555+void timer_clock_prescale_set(timer_clock_div_t __x)
2556+{
2557+ uint8_t __t;
2558+ __asm__ __volatile__ (
2559+ "in __tmp_reg__,__SREG__" "\n\t"
2560+ "cli" "\n\t"
2561+ "in %[temp],%[clpr]" "\n\t"
2562+ "out %[clpr],%[enable]" "\n\t"
2563+ "andi %[temp],%[not_CLTPS]" "\n\t"
2564+ "or %[temp], %[set_value]" "\n\t"
2565+ "out %[clpr],%[temp]" "\n\t"
2566+ "sei" "\n\t"
2567+ "out __SREG__,__tmp_reg__" "\n\t"
2568+ : /* no outputs */
2569+ : [temp] "r" (__t),
2570+ [clpr] "I" (_SFR_IO_ADDR(CLKPR)),
2571+ [enable] "r" (_BV(CLPCE)),
2572+ [not_CLTPS] "M" (0xFF & (~ ((1 << CLTPS2) | (1 << CLTPS1) | (1 << CLTPS0)))),
2573+ [set_value] "r" ((__x & 7) << 3)
2574+ : "r0");
2575+}
2576+
2577+#define timer_clock_prescale_get() (timer_clock_div_t)(CLKPR & (uint8_t)((1<<CLTPS0)|(1<<CLTPS1)|(1<<CLTPS2)))
2578+
2579 #elif defined(__AVR_ATtiny24__) \
2580 || defined(__AVR_ATtiny24A__) \
2581 || defined(__AVR_ATtiny44__) \
2582diff -Naurp include/avr/sleep.h include/avr/sleep.h
69ed15f0
JR
2583--- include/avr/sleep.h 2012-11-22 19:55:03.000000000 +0530
2584+++ include/avr/sleep.h 2012-11-22 19:58:10.000000000 +0530
9fe267c2
PZ
2585@@ -210,7 +210,8 @@
2586 } while(0)
2587
2588 #elif defined(__AVR_ATtiny167__) \
2589-|| defined(__AVR_ATtiny87__)
2590+|| defined(__AVR_ATtiny87__) \
2591+|| defined(__AVR_ATtiny828__)
2592
2593 #define SLEEP_MODE_IDLE 0
2594 #define SLEEP_MODE_ADC _BV(SM0)
2595@@ -222,6 +223,8 @@
2596 } while(0)
2597
2598 #elif defined(__AVR_AT90S4434__) \
2599+|| defined(__AVR_ATA5505__) \
2600+|| defined(__AVR_ATA5272__) \
2601 || defined(__AVR_AT76C711__) \
2602 || defined(__AVR_AT90S8535__) \
2603 || defined(__AVR_ATmega103__) \
69ed15f0 2604@@ -315,7 +318,8 @@
9fe267c2
PZ
2605 || defined(__AVR_ATtiny461A__) \
2606 || defined(__AVR_ATtiny861__) \
2607 || defined(__AVR_ATtiny861A__) \
2608-|| defined(__AVR_ATtiny43U__)
2609+|| defined(__AVR_ATtiny43U__) \
2610+|| defined(__AVR_ATtiny1634__)
2611
2612 #define SLEEP_MODE_IDLE 0
2613 #define SLEEP_MODE_ADC _BV(SM0)
69ed15f0 2614@@ -329,6 +333,7 @@
9fe267c2
PZ
2615
2616 #elif defined(__AVR_AT90PWM216__) \
2617 || defined(__AVR_AT90PWM316__) \
2618+|| defined(__AVR_AT90PWM161__) \
69ed15f0
JR
2619 || defined(__AVR_AT90PWM81__) \
2620 || defined(__AVR_AT90PWM1__) \
2621 || defined(__AVR_AT90PWM2__) \
2622@@ -354,8 +359,10 @@
9fe267c2
PZ
2623 || defined(__AVR_AT90USB646__) \
2624 || defined(__AVR_AT90USB647__) \
2625 || defined(__AVR_ATmega128__) \
2626+|| defined(__AVR_ATmega128A__) \
2627 || defined(__AVR_ATmega1280__) \
2628 || defined(__AVR_ATmega1281__) \
2629+|| defined(__AVR_ATmega1284__) \
2630 || defined(__AVR_ATmega1284P__) \
2631 || defined(__AVR_ATmega128RFA1__) \
2632 || defined(__AVR_ATmega16__) \
69ed15f0 2633@@ -363,13 +370,16 @@
9fe267c2
PZ
2634 || defined(__AVR_ATmega162__) \
2635 || defined(__AVR_ATmega164A__) \
2636 || defined(__AVR_ATmega164P__) \
2637+|| defined(__AVR_ATmega164PA__) \
9fe267c2
PZ
2638 || defined(__AVR_ATmega168A__) \
2639 || defined(__AVR_ATmega168P__) \
2640+|| defined(__AVR_ATmega168PA__) \
69ed15f0
JR
2641 || defined(__AVR_ATmega16HVA2__) \
2642 || defined(__AVR_ATmega16U4__) \
9fe267c2
PZ
2643 || defined(__AVR_ATmega2560__) \
2644 || defined(__AVR_ATmega2561__) \
2645 || defined(__AVR_ATmega32__) \
2646+|| defined(__AVR_ATmega32A__) \
2647 || defined(__AVR_ATmega323__) \
2648 || defined(__AVR_ATmega324A__) \
2649 || defined(__AVR_ATmega324P__) \
69ed15f0
JR
2650@@ -380,8 +390,10 @@
2651 || defined(__AVR_ATmega32U4__) \
2652 || defined(__AVR_ATmega32U6__) \
9fe267c2
PZ
2653 || defined(__AVR_ATmega48A__) \
2654+|| defined(__AVR_ATmega48PA__) \
2655 || defined(__AVR_ATmega48P__) \
2656 || defined(__AVR_ATmega64__) \
2657+|| defined(__AVR_ATmega64A__) \
2658 || defined(__AVR_ATmega640__) \
2659 || defined(__AVR_ATmega644__) \
2660 || defined(__AVR_ATmega644A__) \
69ed15f0 2661@@ -407,21 +419,26 @@
9fe267c2
PZ
2662 _SLEEP_CONTROL_REG = ((_SLEEP_CONTROL_REG & ~(_BV(SM0) | _BV(SM1) | _BV(SM2))) | (mode)); \
2663 } while(0)
2664
69ed15f0
JR
2665-#elif defined(__AVR_ATmega8__) \
2666+#elif defined(__AVR_ATmega8A__) \
2667+|| defined(__AVR_ATmega8__) \
2668 || defined(__AVR_ATmega6450A__) \
2669 || defined(__AVR_ATmega6450P__) \
2670 || defined(__AVR_ATmega645A__) \
2671 || defined(__AVR_ATmega645P__) \
2672 || defined(__AVR_ATmega3250A__) \
2673+|| defined(__AVR_ATmega3250PA__) \
2674 || defined(__AVR_ATmega325A__) \
2675+|| defined(__AVR_ATmega325PA__) \
2676 || defined(__AVR_ATmega165A__) \
2677 || defined(__AVR_ATmega165P__) \
2678+|| defined(__AVR_ATmega165PA__) \
2679 || defined(__AVR_ATmega169A__) \
2680 || defined(__AVR_ATmega169P__) \
2681 || defined(__AVR_ATmega169PA__) \
2682 || defined(__AVR_ATmega329A__) \
2683 || defined(__AVR_ATmega329PA__) \
2684 || defined(__AVR_ATmega3290A__) \
2685+|| defined(__AVR_ATmega3290PA__) \
2686 || defined(__AVR_ATmega649A__) \
2687 || defined(__AVR_ATmega649P__) \
2688 || defined(__AVR_ATmega6490A__) \
2689@@ -458,22 +475,45 @@
2690 } while(0)
2691
9fe267c2
PZ
2692 #elif defined(__AVR_ATxmega16A4__) \
2693+|| defined(__AVR_ATxmega16A4U__) \
2694+|| defined(__AVR_ATxmega16C4__) \
2695 || defined(__AVR_ATxmega16D4__) \
2696 || defined(__AVR_ATxmega32A4__) \
2697+|| defined(__AVR_ATxmega32A4U__) \
2698+|| defined(__AVR_ATxmega32C4__) \
2699 || defined(__AVR_ATxmega32D4__) \
2700 || defined(__AVR_ATxmega64A1__) \
2701 || defined(__AVR_ATxmega64A1U__) \
2702 || defined(__AVR_ATxmega64A3__) \
2703+|| defined(__AVR_ATxmega64A3U__) \
2704+|| defined(__AVR_ATxmega64A4U__) \
2705+|| defined(__AVR_ATxmega64B1__) \
2706+|| defined(__AVR_ATxmega64B3__) \
2707+|| defined(__AVR_ATxmega64C3__) \
2708 || defined(__AVR_ATxmega64D3__) \
2709+|| defined(__AVR_ATxmega64D4__) \
2710 || defined(__AVR_ATxmega128A1__) \
2711 || defined(__AVR_ATxmega128A1U__) \
2712 || defined(__AVR_ATxmega128A3__) \
2713+|| defined(__AVR_ATxmega128A3U__) \
2714+|| defined(__AVR_ATxmega128A4U__) \
2715+|| defined(__AVR_ATxmega128B1__) \
2716+|| defined(__AVR_ATxmega128B3__) \
2717+|| defined(__AVR_ATxmega128C3__) \
2718 || defined(__AVR_ATxmega128D3__) \
2719+|| defined(__AVR_ATxmega128D4__) \
2720 || defined(__AVR_ATxmega192A3__) \
2721+|| defined(__AVR_ATxmega192A3U__) \
2722+|| defined(__AVR_ATxmega192C3__) \
2723 || defined(__AVR_ATxmega192D3__) \
2724 || defined(__AVR_ATxmega256A3__) \
2725+|| defined(__AVR_ATxmega256A3U__) \
2726+|| defined(__AVR_ATxmega256C3__) \
2727 || defined(__AVR_ATxmega256D3__) \
2728-|| defined(__AVR_ATxmega256A3B__)
2729+|| defined(__AVR_ATxmega256A3B__) \
2730+|| defined(__AVR_ATxmega256A3BU__) \
2731+|| defined(__AVR_ATxmega384C3__) \
2732+|| defined(__AVR_ATxmega384D3__)
2733
2734 #define SLEEP_MODE_IDLE (0)
2735 #define SLEEP_MODE_PWR_DOWN (SLEEP_SMODE1_bm)
69ed15f0 2736@@ -504,7 +544,9 @@
9fe267c2
PZ
2737 _SLEEP_CONTROL_REG = ((_SLEEP_CONTROL_REG & ~(_BV(SM0) | _BV(SM1) | _BV(SM2))) | (mode)); \
2738 } while(0)
2739
2740-#elif defined(__AVR_ATA6289__)
2741+#elif defined(__AVR_ATA6285__) \
2742+|| defined(__AVR_ATA6286__) \
2743+|| defined(__AVR_ATA6289__)
2744
2745 #define SLEEP_MODE_IDLE (0)
2746 #define SLEEP_MODE_SENSOR_NOISE_REDUCTION (_BV(SM0))
69ed15f0 2747@@ -515,6 +557,19 @@
9fe267c2
PZ
2748 _SLEEP_CONTROL_REG = ((_SLEEP_CONTROL_REG & ~(_BV(SM0) | _BV(SM1) | _BV(SM2))) | (mode)); \
2749 } while(0)
2750
2751+#elif defined (__AVR_ATA5790__) \
2752+|| defined (__AVR_ATA5795__)
2753+
2754+ #define SLEEP_MODE_IDLE (0)
2755+ #define SLEEP_MODE_EXT_PWR_SAVE (_BV(SM0))
2756+ #define SLEEP_MODE_PWR_DOWN (_BV(SM1))
2757+ #define SLEEP_MODE_PWR_SAVE (_BV(SM1) | _BV(SM0))
2758+
2759+ #define set_sleep_mode(mode) \
2760+ do { \
2761+ _SLEEP_CONTROL_REG = ((_SLEEP_CONTROL_REG & ~(_BV(SM0) | _BV(SM1) | _BV(SM2))) | (mode)); \
2762+ } while(0)
2763+
2764 #elif defined(__AVR_ATtiny4__) \
2765 || defined(__AVR_ATtiny5__) \
2766 || defined(__AVR_ATtiny9__) \
2767diff -Naurp include/avr/wdt.h include/avr/wdt.h
69ed15f0
JR
2768--- include/avr/wdt.h 2011-12-29 14:21:50.000000000 +0530
2769+++ include/avr/wdt.h 2012-11-22 19:48:48.000000000 +0530
9fe267c2
PZ
2770@@ -131,21 +131,44 @@
2771
2772
2773 #if defined(__AVR_ATxmega16A4__) \
2774+|| defined(__AVR_ATxmega16A4U__) \
2775+|| defined(__AVR_ATxmega16C4__) \
2776 || defined(__AVR_ATxmega16D4__) \
2777 || defined(__AVR_ATxmega32A4__) \
2778+|| defined(__AVR_ATxmega32A4U__) \
2779+|| defined(__AVR_ATxmega32C4__) \
2780 || defined(__AVR_ATxmega32D4__) \
2781 || defined(__AVR_ATxmega64A1U__) \
2782 || defined(__AVR_ATxmega64A3__) \
2783+|| defined(__AVR_ATxmega64A3U__) \
2784+|| defined(__AVR_ATxmega64A4U__) \
2785+|| defined(__AVR_ATxmega64B1__) \
2786+|| defined(__AVR_ATxmega64B3__) \
2787+|| defined(__AVR_ATxmega64C3__) \
2788 || defined(__AVR_ATxmega64D3__) \
2789+|| defined(__AVR_ATxmega64D4__) \
2790 || defined(__AVR_ATxmega128A1__) \
2791 || defined(__AVR_ATxmega128A1U__) \
2792 || defined(__AVR_ATxmega128A3__) \
2793+|| defined(__AVR_ATxmega128A3U__) \
2794+|| defined(__AVR_ATxmega128A4U__) \
2795+|| defined(__AVR_ATxmega128B1__) \
2796+|| defined(__AVR_ATxmega128B3__) \
2797+|| defined(__AVR_ATxmega128C3__) \
2798 || defined(__AVR_ATxmega128D3__) \
2799+|| defined(__AVR_ATxmega128D4__) \
2800 || defined(__AVR_ATxmega192A3__) \
2801+|| defined(__AVR_ATxmega192A3U__) \
2802+|| defined(__AVR_ATxmega192C3__) \
2803 || defined(__AVR_ATxmega192D3__) \
2804 || defined(__AVR_ATxmega256A3__) \
2805+|| defined(__AVR_ATxmega256A3U__) \
2806+|| defined(__AVR_ATxmega256C3__) \
2807 || defined(__AVR_ATxmega256D3__) \
2808-|| defined(__AVR_ATxmega256A3B__)
2809+|| defined(__AVR_ATxmega256A3B__) \
2810+|| defined(__AVR_ATxmega256A3BU__) \
2811+|| defined(__AVR_ATxmega384C3__) \
2812+|| defined(__AVR_ATxmega384D3__)
2813
2814 /*
2815 wdt_enable(WDT_PER_8KCLK_gc);
2816@@ -177,6 +200,7 @@ __asm__ __volatile__ ( \
2817 || defined(__AVR_AT90PWM3__) \
2818 || defined(__AVR_AT90PWM316__) \
2819 || defined(__AVR_AT90PWM3B__) \
2820+|| defined(__AVR_AT90PWM161__) \
2821 || defined(__AVR_AT90PWM81__) \
2822 || defined(__AVR_AT90USB1286__) \
2823 || defined(__AVR_AT90USB1287__) \
2824@@ -184,19 +208,24 @@ __asm__ __volatile__ ( \
2825 || defined(__AVR_AT90USB646__) \
2826 || defined(__AVR_AT90USB647__) \
2827 || defined(__AVR_AT90USB82__) \
2828+|| defined(__AVR_ATmega128A__) \
2829 || defined(__AVR_ATmega1280__) \
2830 || defined(__AVR_ATmega1281__) \
2831+|| defined(__AVR_ATmega1284__) \
2832 || defined(__AVR_ATmega1284P__) \
2833 || defined(__AVR_ATmega128RFA1__) \
2834 || defined(__AVR_ATmega164__) \
2835 || defined(__AVR_ATmega164A__) \
2836 || defined(__AVR_ATmega164P__) \
2837+|| defined(__AVR_ATmega164PA__) \
2838 || defined(__AVR_ATmega165__) \
2839 || defined(__AVR_ATmega165A__) \
2840 || defined(__AVR_ATmega165P__) \
2841+|| defined(__AVR_ATmega165PA__) \
2842 || defined(__AVR_ATmega168__) \
2843 || defined(__AVR_ATmega168A__) \
2844 || defined(__AVR_ATmega168P__) \
2845+|| defined(__AVR_ATmega168PA__) \
2846 || defined(__AVR_ATmega169__) \
2847 || defined(__AVR_ATmega169A__) \
2848 || defined(__AVR_ATmega169P__) \
2849@@ -210,6 +239,7 @@ __asm__ __volatile__ ( \
2850 || defined(__AVR_ATmega16U4__) \
2851 || defined(__AVR_ATmega2560__) \
2852 || defined(__AVR_ATmega2561__) \
2853+|| defined(__AVR_ATmega32A__) \
2854 || defined(__AVR_ATmega324__) \
2855 || defined(__AVR_ATmega324A__) \
2856 || defined(__AVR_ATmega324P__) \
2857@@ -217,9 +247,11 @@ __asm__ __volatile__ ( \
2858 || defined(__AVR_ATmega325__) \
2859 || defined(__AVR_ATmega325A__) \
2860 || defined(__AVR_ATmega325P__) \
2861+|| defined(__AVR_ATmega325PA__) \
2862 || defined(__AVR_ATmega3250__) \
2863 || defined(__AVR_ATmega3250A__) \
2864 || defined(__AVR_ATmega3250P__) \
2865+|| defined(__AVR_ATmega3250PA__) \
2866 || defined(__AVR_ATmega328__) \
2867 || defined(__AVR_ATmega328P__) \
2868 || defined(__AVR_ATmega329__) \
2869@@ -229,6 +261,7 @@ __asm__ __volatile__ ( \
2870 || defined(__AVR_ATmega3290__) \
2871 || defined(__AVR_ATmega3290A__) \
2872 || defined(__AVR_ATmega3290P__) \
2873+|| defined(__AVR_ATmega3290PA__) \
2874 || defined(__AVR_ATmega32C1__) \
2875 || defined(__AVR_ATmega32HVB__) \
2876 || defined(__AVR_ATmega32HVBREVB__) \
2877@@ -239,7 +272,9 @@ __asm__ __volatile__ ( \
2878 || defined(__AVR_ATmega406__) \
2879 || defined(__AVR_ATmega48__) \
2880 || defined(__AVR_ATmega48A__) \
2881+|| defined(__AVR_ATmega48PA__) \
2882 || defined(__AVR_ATmega48P__) \
2883+|| defined(__AVR_ATmega64A__) \
2884 || defined(__AVR_ATmega640__) \
2885 || defined(__AVR_ATmega644__) \
2886 || defined(__AVR_ATmega644A__) \
2887@@ -260,6 +295,7 @@ __asm__ __volatile__ ( \
2888 || defined(__AVR_ATmega64C1__) \
2889 || defined(__AVR_ATmega64HVE__) \
2890 || defined(__AVR_ATmega64M1__) \
2891+|| defined(__AVR_ATmega8A__) \
2892 || defined(__AVR_ATmega88__) \
2893 || defined(__AVR_ATmega88A__) \
2894 || defined(__AVR_ATmega88P__) \
2895@@ -271,7 +307,13 @@ __asm__ __volatile__ ( \
2896 || defined(__AVR_ATtiny87__) \
2897 || defined(__AVR_ATtiny167__) \
2898 || defined(__AVR_AT90SCR100__) \
2899-|| defined(__AVR_ATA6289__)
2900+|| defined(__AVR_ATA6285__) \
2901+|| defined(__AVR_ATA6286__) \
2902+|| defined(__AVR_ATA6289__) \
2903+|| defined(__AVR_ATA5272__) \
2904+|| defined(__AVR_ATA5505__) \
2905+|| defined(__AVR_ATA5790__) \
2906+|| defined(__AVR_ATA5795__)
2907
2908 /* Use STS instruction. */
2909
2910@@ -416,7 +458,7 @@ __asm__ __volatile__ ( \
2911 ATmega8HVA, ATmega16HVA, ATmega32HVB,
2912 ATmega406, ATmega1284P,
2913 AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316,
2914- AT90PWM81,
2915+ AT90PWM81, AT90PWM161,
2916 AT90USB82, AT90USB162,
2917 AT90USB646, AT90USB647, AT90USB1286, AT90USB1287,
2918 ATtiny48, ATtiny88.
2919@@ -430,17 +472,20 @@ __asm__ __volatile__ ( \
2920 ATtiny24, ATtiny44, ATtiny84, ATtiny84A,
2921 ATtiny25, ATtiny45, ATtiny85,
2922 ATtiny261, ATtiny461, ATtiny861,
2923- ATmega48, ATmega88, ATmega168,
2924+ ATmega48, ATmega48A, ATmega48PA, ATmega88, ATmega168,
2925 ATmega48P, ATmega88P, ATmega168P, ATmega328P,
2926 ATmega164P, ATmega324P, ATmega644P, ATmega644,
2927 ATmega640, ATmega1280, ATmega1281, ATmega2560, ATmega2561,
2928 ATmega8HVA, ATmega16HVA, ATmega32HVB,
2929 ATmega406, ATmega1284P,
2930 AT90PWM1, AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B, AT90PWM216, AT90PWM316,
2931- AT90PWM81,
2932+ AT90PWM81, AT90PWM161,
2933 AT90USB82, AT90USB162,
2934 AT90USB646, AT90USB647, AT90USB1286, AT90USB1287,
2935- ATtiny48, ATtiny88.
2936+ ATtiny48, ATtiny88,
2937+ ATxmega16a4u, ATxmega32a4u,
2938+ ATxmega16c4, ATxmega32c4,
2939+ ATxmega128c3, ATxmega192c3, ATxmega256c3.
2940 */
2941 #define WDTO_8S 9
2942
This page took 0.601318 seconds and 4 git commands to generate.