Patching_AVR_GCC
If you want to add support for new devices, in most cases you have to patch several files.
They are listed here.
gcc
/usr/src/avr-toolchain-src/gcc-3.4.4/gcc/config/avr/avr.c (line 162 ff)
/avr.h (CPP_SPEC, LINK_SPEC, CRT_BINUTILS_SPECS)
/t-avr (MULTILIB_MATCHES)
binutils
/usr/src/avr-toolchain-src/binutils-2.16.1/gas/config/tc-avr.c
avr-libc
/usr/src/avr-toolchain-src/avr-libc-1.2.5/configure.in
/include/avr/io.h
/include/avr/eeprom.h
/include/avr/xxx.hThe file xxx.h is the header file, that is specific for the new device, e.g. iom1280.h Normally the file eeprom.h shouldn't need no patching any more.
current patches
This patch includes patches for:
- gcc-3.4.4
- binutils-2.16.1
to add support for avr-gcc for the following devices:
- ATtiny25, ATtiny45, ATtiny85, ATtiny13, ATtiny2313
- ATmega48, ATmega88, ATmega168,
- ATmega164/324/644
- ATmega329/3290/649/6490
- ATmega640, ATmega1280, ATmega1281
- ATmega325, ATmega3250
- ATmega645, ATmega6450
- ATmega165
- AT90CAN128
not yet supported by this patchset:
- AT90pwm2, AT90pwm3
- AT90can32, AT90can64
- devices with 256 kBytes Flash
see also:
http://www.freebsd.org/cgi/cvsweb.cgi/ports/devel/avr-gcc/files/
http://www.freebsd.org/cgi/cvsweb.cgi/ports/devel/avr-binutils/files/
Back to AVR-GCC