? build ? genpatch ? crt1/.gcrt1.S.swp ? include/avr/iom2560.h ? include/avr/iom2561.h Index: configure.ac =================================================================== RCS file: /sources/avr-libc/avr-libc/configure.ac,v retrieving revision 1.32 diff -U12 -r1.32 configure.ac --- configure.ac 22 Apr 2006 08:41:44 -0000 1.32 +++ configure.ac 12 May 2006 21:25:51 -0000 @@ -531,24 +531,36 @@ CHECK_AVR_DEVICE(at90usb646) AM_CONDITIONAL(HAS_at90usb646, test "x$HAS_at90usb646" = "xyes") CHECK_AVR_DEVICE(at90usb647) AM_CONDITIONAL(HAS_at90usb647, test "x$HAS_at90usb647" = "xyes") CHECK_AVR_DEVICE(at90usb1286) AM_CONDITIONAL(HAS_at90usb1286, test "x$HAS_at90usb1286" = "xyes") CHECK_AVR_DEVICE(at90usb1287) AM_CONDITIONAL(HAS_at90usb1287, test "x$HAS_at90usb1287" = "xyes") +# avr6 +AM_CONDITIONAL(HAS_avr6, true) +AM_CONDITIONAL(HAS_atmega2560, true) +AM_CONDITIONAL(HAS_atmega2561, true) + +CHECK_AVR_DEVICE(atmega2560) +AM_CONDITIONAL(HAS_atmega2560, test "x$HAS_atmega2560" = "xyes") + +CHECK_AVR_DEVICE(atmega2561) +AM_CONDITIONAL(HAS_atmega2561, test "x$HAS_atmega2561" = "xyes") + + # Generate all files from *.in sources. AC_CONFIG_FILES([ Makefile avr-libc.spec avr/Makefile avr/lib/Makefile common/Makefile crt1/Makefile doc/Makefile doc/api/Makefile doc/examples/Makefile @@ -656,13 +668,19 @@ avr/lib/avr5/atmega1280/Makefile avr/lib/avr5/atmega1281/Makefile avr/lib/avr5/at90can32/Makefile avr/lib/avr5/at90can64/Makefile avr/lib/avr5/at90can128/Makefile avr/lib/avr5/at90usb646/Makefile avr/lib/avr5/at90usb647/Makefile avr/lib/avr5/at90usb1286/Makefile avr/lib/avr5/at90usb1287/Makefile avr/lib/avr5/at94k/Makefile ]) +#avr6 +AC_CONFIG_FILES([ + avr/lib/avr6/Makefile + avr/lib/avr6/atmega2560/Makefile + avr/lib/avr6/atmega2561/Makefile +]) AC_OUTPUT Index: crt1/gcrt1.S =================================================================== RCS file: /sources/avr-libc/avr-libc/crt1/gcrt1.S,v retrieving revision 1.8 diff -U12 -r1.8 gcrt1.S --- crt1/gcrt1.S 10 Nov 2005 21:12:09 -0000 1.8 +++ crt1/gcrt1.S 12 May 2006 21:25:52 -0000 @@ -141,24 +141,29 @@ .set __heap_end, 0 .section .init2,"ax",@progbits clr __zero_reg__ out _SFR_IO_ADDR(SREG), __zero_reg__ ldi r28,lo8(__stack) #ifdef SPH ldi r29,hi8(__stack) out _SFR_IO_ADDR(SPH), r29 #endif out _SFR_IO_ADDR(SPL), r28 +#ifdef __AVR_3_BYTE_PC__ + ldi r16,hh8(pm(__vectors)) + out _SFR_IO_ADDR(EIND),r16 +#endif + #if BIG_CODE /* Only for >64K devices with RAMPZ, replaces the default code provided by libgcc.S which is only linked in if necessary. */ .section .init4,"ax",@progbits .global __do_copy_data __do_copy_data: ldi r17, hi8(__data_end) ldi r26, lo8(__data_start) ldi r27, hi8(__data_start) ldi r30, lo8(__data_load_start) ldi r31, hi8(__data_load_start) @@ -187,15 +192,16 @@ brcs .L__do_copy_data_carry #endif .L__do_copy_data_start: cpi r26, lo8(__data_end) cpc r27, r17 brne .L__do_copy_data_loop #endif /* BIG_CODE */ .set __stack, RAMEND #endif /* !__AVR_ASM_ONLY__ */ .section .init9,"ax",@progbits - XJMP main + XCALL main + XJMP exit ; .endfunc Index: devtools/gen-avr-lib-tree.sh =================================================================== RCS file: /sources/avr-libc/avr-libc/devtools/gen-avr-lib-tree.sh,v retrieving revision 1.18 diff -U12 -r1.18 gen-avr-lib-tree.sh --- devtools/gen-avr-lib-tree.sh 22 Apr 2006 08:41:44 -0000 1.18 +++ devtools/gen-avr-lib-tree.sh 12 May 2006 21:25:53 -0000 @@ -204,31 +204,37 @@ atmega1280:crtm1280.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS};\ atmega1281:crtm1281.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS};\ at90can32:crtcan32.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS};\ at90can64:crtcan64.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS};\ at90can128:crtcan128.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS};\ at90usb646:crtusb646.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS};\ at90usb647:crtusb647.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS};\ at90usb1286:crtusb1286.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS};\ at90usb1287:crtusb1287.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS};\ at94k:crtat94k.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS}\ " +AVR6_DEV_INFO="\ +atmega2560:crtm2560.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS};\ +atmega2561:crtm2561.o:${DEV_DEFS}:${CFLAGS_SPEED}:${DEV_ASFLAGS}\ +" + LIB_DEFS="-D__COMPILING_AVR_LIBC__" AVR_ARH_INFO="\ avr2:AVR12_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\ avr3:AVR3_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPEED}:${ASFLAGS_SPEED};\ avr4:AVR4_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPACE}:${DEV_ASFLAGS};\ -avr5:AVR5_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPEED}:${ASFLAGS_SPEED}\ +avr5:AVR5_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPEED}:${ASFLAGS_SPEED};\ +avr6:AVR6_DEV_INFO:${LIB_DEFS}:${CFLAGS_SPEED}:${ASFLAGS_SPEED}\ " echo "Generating source directories:" IFS=';' ARH_SUBDIRS="SUBDIRS =" for ath_lib in $AVR_ARH_INFO do arh=$(echo $ath_lib | awk -F: '{print $1}') dev_info=$(echo $ath_lib | awk -F: '{print $2}') lib_defs=$(echo $ath_lib | awk -F: '{print $3}') Index: include/avr/io.h =================================================================== RCS file: /sources/avr-libc/avr-libc/include/avr/io.h,v retrieving revision 1.32 diff -U12 -r1.32 io.h --- include/avr/io.h 22 Apr 2006 08:41:44 -0000 1.32 +++ include/avr/io.h 12 May 2006 21:25:54 -0000 @@ -175,24 +175,28 @@ #elif defined (__AVR_AT43USB355__) # include #elif defined (__AVR_AT76C711__) # include #elif defined (__AVR_AT86RF401__) # include #elif defined (__AVR_AT90PWM2__) # include #elif defined (__AVR_AT90PWM3__) # include #elif defined (__AVR_ATmega128__) # include +#elif defined (__AVR_ATmega2561__) +# include +#elif defined (__AVR_ATmega2560__) +# include #elif defined (__AVR_ATmega1280__) # include #elif defined (__AVR_ATmega1281__) # include #elif defined (__AVR_AT90CAN32__) # include #elif defined (__AVR_AT90CAN64__) # include #elif defined (__AVR_AT90CAN128__) # include #elif defined (__AVR_AT90USB646__) # include