diff options
Diffstat (limited to 'patches/binutils-2.20.1a/atmel/0009-Add-support-for-more-XMEGA-devices.patch')
-rw-r--r-- | patches/binutils-2.20.1a/atmel/0009-Add-support-for-more-XMEGA-devices.patch | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/patches/binutils-2.20.1a/atmel/0009-Add-support-for-more-XMEGA-devices.patch b/patches/binutils-2.20.1a/atmel/0009-Add-support-for-more-XMEGA-devices.patch new file mode 100644 index 0000000..bbb8b64 --- /dev/null +++ b/patches/binutils-2.20.1a/atmel/0009-Add-support-for-more-XMEGA-devices.patch @@ -0,0 +1,101 @@ +From 0a532d69add35e87bd577d6e9341897d8b5080be Mon Sep 17 00:00:00 2001 +From: Stephan Linz <linz@li-pro.net> +Date: Tue, 19 Apr 2011 00:55:01 +0200 +Subject: [PATCH 9/9] Add support for more XMEGA devices + +Add support for a bunch of new AVR XMEGA devices: atxmega64a1u, +atxmega128a1u, atxmega128b1, atxmega16x1, atxmega32x1 + +Original ATMEL patch from: +http://distribute.atmel.no/tools/opensource/avr-gcc/binutils-2.20.1/53-binutils-2.20.1-xmega128a1u-64a1u.patch +http://distribute.atmel.no/tools/opensource/avr-gcc/binutils-2.20.1/54-binutils-2.20.1-atxmega16x1-32x1.patch +http://distribute.atmel.no/tools/opensource/avr-gcc/binutils-2.20.1/55-binutils-2.20.1-atxmega128b1.patch + +Signed-off-by: Stephan Linz <linz@li-pro.net> +--- + binutils/size.c | 1 + + gas/config/tc-avr.c | 5 +++++ + gas/doc/c-avr.texi | 14 ++++++++------ + 3 files changed, 14 insertions(+), 6 deletions(-) + +diff --git a/binutils/size.c b/binutils/size.c +index a6c8e6c..f5ca64b 100644 +--- a/binutils/size.c ++++ b/binutils/size.c +@@ -132,6 +132,7 @@ avr_device_t avr[] = + {"atxmega128a1", AVR136K, AVR8K, AVR2K}, + {"atxmega128a1u", AVR136K, AVR8K, AVR2K}, + {"atxmega128a3", AVR136K, AVR8K, AVR2K}, ++ {"atxmega128b1", AVR136K, AVR8K, AVR2K}, + {"atxmega128d3", AVR136K, AVR8K, AVR2K}, + + {"at43usb320", AVR128K, 608UL, 0UL}, +diff --git a/gas/config/tc-avr.c b/gas/config/tc-avr.c +index 20501bb..1a22ae7 100644 +--- a/gas/config/tc-avr.c ++++ b/gas/config/tc-avr.c +@@ -252,12 +252,16 @@ static struct mcu_type_s mcu_types[] = + {"atmega2561", AVR_ISA_AVR6, bfd_mach_avr6}, + {"atxmega16a4", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, + {"atxmega16d4", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, ++ {"atxmega16x1", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, + {"atxmega32a4", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, + {"atxmega32d4", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, ++ {"atxmega32x1", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, + {"atxmega64a3", AVR_ISA_XMEGA, bfd_mach_avrxmega4}, + {"atxmega64d3", AVR_ISA_XMEGA, bfd_mach_avrxmega4}, + {"atxmega64a1", AVR_ISA_XMEGA, bfd_mach_avrxmega5}, ++ {"atxmega64a1u",AVR_ISA_XMEGA, bfd_mach_avrxmega5}, + {"atxmega128a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6}, ++ {"atxmega128b1", AVR_ISA_XMEGA, bfd_mach_avrxmega6}, + {"atxmega128d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6}, + {"atxmega192a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6}, + {"atxmega192d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6}, +@@ -265,6 +269,7 @@ static struct mcu_type_s mcu_types[] = + {"atxmega256a3b",AVR_ISA_XMEGA, bfd_mach_avrxmega6}, + {"atxmega256d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6}, + {"atxmega128a1", AVR_ISA_XMEGA, bfd_mach_avrxmega7}, ++ {"atxmega128a1u",AVR_ISA_XMEGA, bfd_mach_avrxmega7}, + {"attiny4", AVR_ISA_AVRTINY10, bfd_mach_avrtiny10}, + {"attiny5", AVR_ISA_AVRTINY10, bfd_mach_avrtiny10}, + {"attiny9", AVR_ISA_AVRTINY10, bfd_mach_avrtiny10}, +diff --git a/gas/doc/c-avr.texi b/gas/doc/c-avr.texi +index c04c546..07637bf 100644 +--- a/gas/doc/c-avr.texi ++++ b/gas/doc/c-avr.texi +@@ -88,24 +88,26 @@ atmega2560, atmega2561). + + Instruction set avrxmega2 is for the XMEGA AVR core with 8K to 64K program + memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16d4, +-atxmega32d4). ++atxmega16x1, atxmega32a4, atxmega32d4, atxmega32x1). + + Instruction set avrxmega3 is for the XMEGA AVR core with 8K to 64K program +-memory space and greater than 64K data space (MCU types: atxmega32a4). ++memory space and greater than 64K data space (MCU types: none). + + Instruction set avrxmega4 is for the XMEGA AVR core with up to 64K program + memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64d3). + + Instruction set avrxmega5 is for the XMEGA AVR core with up to 64K program +-memory space and greater than 64K data space (MCU types: atxmega64a1). ++memory space and greater than 64K data space (MCU types: atxmega64a1, ++atxmega64a1u). + + Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program + memory space and less than 64K data space (MCU types: atxmega128a3, +-atxmega128d3, atxmega192a3, atxmega192d3, atxmega256a3, atxmega256a3b, +-atxmega192d3). ++atxmega128d3, atxmega192a3, atxmega128b1, atxmega192d3, atxmega256a3, ++atxmega256a3b, atxmega192d3). + + Instruction set avrxmega7 is for the XMEGA AVR core with up to 256K program +-memory space and greater than 64K data space (MCU types: atxmega128a1). ++memory space and greater than 64K data space (MCU types: atxmega128a1, ++atxmega128a1u). + + @cindex @code{-mall-opcodes} command line option, AVR + @item -mall-opcodes +-- +1.6.0.4 + |