mirror of
https://git.freebsd.org/ports.git
synced 2025-05-17 09:33:11 -04:00
microcontrollers. It includes patches from the WinAVR project to support the ATmega32C1, ATmega32M1, ATmega32U4, and ATtiny167 controllers, and in particular the next generation AVRs ATxmega64A1 and ATxmega128A1. The port has been carefully crafted to peacefully coexist with the non-devel avr-gcc port. All executables installed have the suffix "-43" added for that reason.
92 lines
3.1 KiB
Text
92 lines
3.1 KiB
Text
--- gcc/config/avr/avr.c.orig Sat Sep 1 17:28:30 2007
|
|
+++ gcc/config/avr/avr.c Wed Dec 19 14:02:11 2007
|
|
@@ -224,6 +224,7 @@ static const struct mcu_type_s avr_mcu_t
|
|
{ "avr35", ARCH_AVR35, NULL },
|
|
{ "at90usb82", ARCH_AVR35, "__AVR_AT90USB82__" },
|
|
{ "at90usb162", ARCH_AVR35, "__AVR_AT90USB162__" },
|
|
+ { "attiny167", ARCH_AVR35, "__AVR_ATtiny167__" },
|
|
/* Enhanced, <= 8K. */
|
|
{ "avr4", ARCH_AVR4, NULL },
|
|
{ "atmega8", ARCH_AVR4, "__AVR_ATmega8__" },
|
|
@@ -278,6 +278,9 @@ static const struct mcu_type_s avr_mcu_t
|
|
{ "at90can64", ARCH_AVR5, "__AVR_AT90CAN64__" },
|
|
{ "at90pwm216", ARCH_AVR5, "__AVR_AT90PWM216__" },
|
|
{ "at90pwm316", ARCH_AVR5, "__AVR_AT90PWM316__" },
|
|
+ { "atmega32c1", ARCH_AVR5, "__AVR_ATmega32C1__" },
|
|
+ { "atmega32m1", ARCH_AVR5, "__AVR_ATmega32M1__" },
|
|
+ { "atmega32u4", ARCH_AVR5, "__AVR_ATmega32U4__" },
|
|
{ "at90usb646", ARCH_AVR5, "__AVR_AT90USB646__" },
|
|
{ "at90usb647", ARCH_AVR5, "__AVR_AT90USB647__" },
|
|
{ "at94k", ARCH_AVR5, "__AVR_AT94K__" },
|
|
--- gcc/config/avr/t-avr.orig Fri Apr 27 22:53:57 2007
|
|
+++ gcc/config/avr/t-avr Wed Dec 19 14:01:08 2007
|
|
@@ -63,6 +63,7 @@ MULTILIB_MATCHES = \
|
|
mmcu?avr31=mmcu?atmega103 \
|
|
mmcu?avr35=mmcu?at90usb82 \
|
|
mmcu?avr35=mmcu?at90usb162 \
|
|
+ mmcu?avr35=mmcu?attiny167 \
|
|
mmcu?avr4=mmcu?atmega48 \
|
|
mmcu?avr4=mmcu?atmega48p \
|
|
mmcu?avr4=mmcu?atmega8 \
|
|
@@ -114,6 +114,9 @@ MULTILIB_MATCHES = \
|
|
mmcu?avr5=mmcu?at90can64 \
|
|
mmcu?avr5=mmcu?at90pwm216 \
|
|
mmcu?avr5=mmcu?at90pwm316 \
|
|
+ mmcu?avr5=mmcu?atmega32c1 \
|
|
+ mmcu?avr5=mmcu?atmega32m1 \
|
|
+ mmcu?avr5=mmcu?atmega32u4 \
|
|
mmcu?avr5=mmcu?at90usb646 \
|
|
mmcu?avr5=mmcu?at90usb647 \
|
|
mmcu?avr5=mmcu?at94k \
|
|
--- gcc/config/avr/avr.h.orig Wed Dec 19 13:39:10 2007
|
|
+++ gcc/config/avr/avr.h Wed Dec 19 14:02:06 2007
|
|
@@ -853,7 +853,8 @@ mmcu=*:-mmcu=%*}"
|
|
mmcu=at43*|\
|
|
mmcu=at76*|\
|
|
mmcu=at90usb82|\
|
|
- mmcu=at90usb162: -m avr3}\
|
|
+ mmcu=at90usb162|\
|
|
+ mmcu=attiny167: -m avr3}\
|
|
%{mmcu=atmega8*|\
|
|
mmcu=atmega48*|\
|
|
mmcu=at90pwm1|\
|
|
@@ -869,6 +869,9 @@ mmcu=*:-mmcu=%*}"
|
|
mmcu=at90can*|\
|
|
mmcu=at90pwm216|\
|
|
mmcu=at90pwm316|\
|
|
+ mmcu=atmega32c1|\
|
|
+ mmcu=atmega32m1|\
|
|
+ mmcu=atmega32u4|\
|
|
mmcu=at90usb64*|\
|
|
mmcu=at90usb128*|\
|
|
mmcu=at94k: -m avr5}\
|
|
@@ -900,7 +901,11 @@ mmcu=*:-mmcu=%*}"
|
|
mmcu=attiny48|\
|
|
mmcu=attiny88|\
|
|
+ mmcu=attiny167|\
|
|
mmcu=at90can*|\
|
|
mmcu=at90pwm*|\
|
|
+ mmcu=atmega32c1|\
|
|
+ mmcu=atmega32m1|\
|
|
+ mmcu=atmega32u4|\
|
|
mmcu=at90usb*: -Tdata 0x800100}\
|
|
%{mmcu=atmega640|\
|
|
mmcu=atmega1280|\
|
|
@@ -958,6 +960,7 @@ mmcu=*:-mmcu=%*}"
|
|
%{mmcu=attiny43u:crttn43u.o%s} \
|
|
%{mmcu=attiny48:crttn48.o%s} \
|
|
%{mmcu=attiny88:crttn88.o%s} \
|
|
+%{mmcu=attiny167:crttn167.o%s} \
|
|
%{mmcu=at43usb320|mmcu=avr3:crt43320.o%s} \
|
|
%{mmcu=at43usb355:crt43355.o%s} \
|
|
%{mmcu=at76c711:crt76711.o%s} \
|
|
@@ -1009,6 +1011,9 @@ mmcu=*:-mmcu=%*}"
|
|
%{mmcu=at90can64:crtcan64.o%s} \
|
|
%{mmcu=at90pwm216:crt90pwm216.o%s} \
|
|
%{mmcu=at90pwm316:crt90pwm316.o%s} \
|
|
+%{mmcu=atmega32c1:crtm32c1.o%s} \
|
|
+%{mmcu=atmega32m1:crtm32m1.o%s} \
|
|
+%{mmcu=atmega32u4:crtm32u4.o%s} \
|
|
%{mmcu=at90usb646:crtusb646.o%s} \
|
|
%{mmcu=at90usb647:crtusb647.o%s} \
|
|
%{mmcu=at94k:crtat94k.o%s} \
|