summaryrefslogtreecommitdiffstats
path: root/arch
Commit message (Collapse)AuthorAgeFilesLines
* arch: toolchain: Introduce binary format FLAT types.Sonic Zhang2013-05-051-0/+26
| | | | | | | | | Just introduce the symbol and options in arch generic Config.in. Add FLAT types specific compiling flags into package makefile. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch: toolchain: Introduce target CPU revision.Sonic Zhang2013-05-052-0/+11
| | | | | | | | | Adds the possibility to have a free-form CPU revision string and append it to the target CPU. Only Blackfin actually uses this option. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch: Add blackfin CPU choiceSonic Zhang2013-05-051-0/+94
| | | | | | | | | This patch adds a Target CPU configuration option and uses it to select a -m option for gcc. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch: toolchain: Introduce binary formats BINFMT_*.Sonic Zhang2013-05-052-11/+34
| | | | | | | | | Just introduce the symbol and options in arch generic Config.in. Append FLAT format link flags to external toolchain wrapper. Signed-off-by: Sonic Zhang <sonic.zhang@analog.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arc: Add option for ARC-specific download siteMischa Jonker2013-05-041-0/+4
| | | | | | | | | | | | As ARC support is not yet in all upstream packages, a different location is required to download the packages from. This adds an option to specify a site for ARC-specific versions of packages such as binutils, gcc. When ARC support has been upstreamed for all packages, this option can be removed again. Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arc: Add ARC and ARC BE architectureMischa Jonker2013-05-042-0/+32
| | | | | | | | Synopsys' DesignWare ARC Processor Cores are a family of 32-bit CPUs that can be used from deeply embedded to high performance host applications. Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/arm: add support for Marvell PJ4Gustavo Zacarias2013-04-291-0/+4
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/arm: drop generic and old, add fa526/626, unify strongarmGustavo Zacarias2013-04-111-20/+9
| | | | | | | | | | | | | | | | | * Add Faraday FA526/626 as suggested on bug #1291 Note however that these cores are v4 and NOT v4t. * Make the sa110 & sa1110 cores -> strongarm since they're the same. * Drop all of the ARM variants lower than v4 including generic, there's no point in supporting obsolete targets. * Fix uClibc USE_BX logic, it was always on, this would break the new FA526/626 support and broke StrongARM since it's a v4 core. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Mark AArch64 as a 64 bits architectureThomas Petazzoni2013-03-181-0/+1
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch/arm: fix-up the ARM Kconfig warningYann E. MORIN2013-02-071-3/+3
| | | | | | | | | | | | | | Kconfig does not accepts that a symbol that is part of a choice be affected a default value. Fix this by introducing a dummy EABI symbol, and make the real EABI symbol a prompt-less option that depends on !OABI. [Peter: drop arm dependency, rename to EABI_CHOICE] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Peter Korsgaard <jacmet@uclibc.org> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arm: deprecate OABIArnout Vandecappelle (Essensium/Mind)2013-02-071-0/+5
| | | | | | | | The BR2_ARM_EABI config symbol is still kept in order to minimize the impact. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch/Config.in.arm: Use armv6k for arm1136jf-s rev1Benoît Thébaudeau2013-02-021-3/+10
| | | | | | | | | | | | According to the ARM1136JF-S and ARM1136J-S Revision r1p5 Technical Reference Manual, from release rev1 (r1pn), the ARM1136JF-S processor implements the ARMv6 instruction set with the ARMv6k additions. This patch differentiates the ARM1136JF-S revisions 0 and 1 in order to use either ARMv6j (e.g. on Freescale i.MX31) or ARMv6k (e.g. on Freescale i.MX35). Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch/sparc: drop old SUN-specific variantsGustavo Zacarias2013-01-021-31/+1
| | | | | | | | | | | | | | | | | | | | Drop the old Sun-specific variants used in old workstations (pre-1997) and other useless ones. The V7 ISA is a very old cpu only used in the first Sun workstations, the toolchain support is broken: the cpu doesn't do hardware div and it's not handled elsewhere. The sparclite is also a very old Fujitsu cpu only used in early 90s Sun machines (includes f930 & f934). The sparclet (tsc701) was a microcontroller-variant. The supersparc and hypersparc are just V8 variants also used in old Sun workstations/servers. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch: fix BR2_ARCH for generic target variantRichard Braun2012-12-201-0/+1
| | | | | Signed-off-by: Richard Braun <rbraun@sceen.net> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch/Config.in.arm: Add BR2_ARM_CPU_HAS_NEON similar to how mmx/sse is ↵Peter Korsgaard2012-12-131-0/+21
| | | | | | | | | handled on x86 NEON support is optional on A5/A9, so let the user choose if SoC has it / wants to use it. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arm: update processor typesGustavo Zacarias2012-12-091-0/+8
| | | | | | | Update the arm processor types: add the cortex A5 & A15 variants. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* powerpc: update processor typesGustavo Zacarias2012-12-091-3/+12
| | | | | | | | | Update the powerpc processor types. Remove the 801, it's the original IBM experimental implementation. Add the 464, 464fp, 476 and 476fp cores. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* xtensa: use uppercase for configurations and modified overlay structureChris Zankel2012-11-211-11/+15
| | | | | | | | | | | Except for architecture and processor names, buildroot uses capitalized configuration names, so change the macro names for xtensa to follow that standard. Change the overlay file to have a subdirectory for each component (gdb, binutils, gcc, etc.) to make it more future-prove. Signed-off-by: Chris Zankel <chris@zankel.net> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch: Config.in string configuration options must be quotedThomas Petazzoni2012-11-156-171/+171
| | | | | | | | | Suggested by Yann E. Morin. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reported-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* xtensa: support configurable processor configurationsChris Zankel2012-11-151-0/+31
| | | | | | | | | | | | | | | | | | | Xtensa is a configurable processor architecture, which allows to define additional instructions and registers. The required variant specific information for the toolchain is delivered in an 'overlay' file, which needs to be 'untarred' to the corresponding directories after the source is installed and patched. This patch provides support for binutils, gcc, and gdb with a very limited changes to the build scripts. These additions are only executed for the Xtensa architecture and have no effect on other architectures. [Thomas: rebased on top of the 'arch: improve definition of gcc mtune, mcpu, etc.' patch, and changed 'Target ABI' to 'Target Architecture Variant']. Signed-off-by: Chris Zankel <chris@zankel.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* xtensa: add support for the Xtensa architectureChris Zankel2012-11-152-0/+13
| | | | | | | | | | | | | The Xtensa architecture had been removed because it required special handling and depended on additional directories and files that became obsolete over time. This change is more aligned to other architectures. [Thomas: rebased on top of the "arch: improve definition of gcc mtune, mcpu, etc." patch]. Signed-off-by: Chris Zankel <chris@zankel.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* arch: improve definition of gcc mtune, mcpu, etc.Thomas Petazzoni2012-11-1513-249/+361
| | | | | | | | | | | | | | | | | | As suggested by Yann E. Morin, there is a better way than our current big Config.in.common to define the gcc mtune, mcpu, march, etc. values. We can split the setting of those values in each architecture file, which makes a lot more sense. Therefore, the Config.in file now creates empty kconfig variables BR2_ARCH, BR2_ENDIAN, BR2_GCC_TARGET_TUNE, BR2_GCC_TARGET_ARCH, BR2_GCC_TARGET_ABI and BR2_GCC_TARGET_CPU. The values of those variables are set by the individual Config.in.<arch> files. This is possible because such files are now only conditionally included depending on the top-level architecture that has been selected. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Split target/Config.in.arch into multiple Config.in.* in arch/Thomas Petazzoni2012-11-049-0/+822
target/Config.in.arch had become too long, and we want to remove the target/ directory. So let's move it to arch/ and split it this way: * An initial Config.in that lists the top-level architecture, and sources the arch-specific Config.in.<arch> files, as well as Config.in.common (see below) * One Config.in.<arch> per architecture, listing the CPU families, ABI choices, etc. * One Config.in.common that defines the gcc mtune, march, mcpu values and other hidden options. [Peter: space->tab fix, mipsel64 little endian, mips3 as noted by Arnout] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>