* [Buildroot] [PATCH 1/2 v3] xtensa: add support for the Xtensa architecture
@ 2012-11-10 0:19 Chris Zankel
2012-11-10 0:38 ` Arnout Vandecappelle
0 siblings, 1 reply; 3+ messages in thread
From: Chris Zankel @ 2012-11-10 0:19 UTC (permalink / raw)
To: buildroot
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.
Signed-off-by: Chris Zankel <chris@zankel.net>
diff --git a/arch/Config.in b/arch/Config.in
index 4d1f81f..ad4a9e0 100644
--- a/arch/Config.in
+++ b/arch/Config.in
@@ -145,6 +145,13 @@ config BR2_x86_64
architecture compatible microprocessor).
http://en.wikipedia.org/wiki/X86_64
+config BR2_xtensa
+ bool "Xtensa"
+ help
+ Xtensa is a Tensilica processor IP architecture.
+ http://en.wikipedia.org/wiki/Xtensa
+ http://www.tensilica.com/
+
endchoice
config BR2_microblaze
@@ -158,4 +165,5 @@ source "arch/Config.in.powerpc"
source "arch/Config.in.sh"
source "arch/Config.in.sparc"
source "arch/Config.in.x86"
+source "arch/Config.in.xtensa"
source "arch/Config.in.common"
diff --git a/arch/Config.in.common b/arch/Config.in.common
index 1ed9929..d2bfd59 100644
--- a/arch/Config.in.common
+++ b/arch/Config.in.common
@@ -49,6 +49,7 @@ config BR2_ARCH
default "sh4aeb" if BR2_sh4aeb
default "sh64" if BR2_sh64
default "sparc" if BR2_sparc
+ default "xtensa" if BR2_xtensa
config BR2_ENDIAN
diff --git a/linux/Config.in b/linux/Config.in
index 277ef0e..29a2110 100644
--- a/linux/Config.in
+++ b/linux/Config.in
@@ -152,7 +152,8 @@ config BR2_LINUX_KERNEL_BZIMAGE
config BR2_LINUX_KERNEL_ZIMAGE
bool "zImage"
- depends on BR2_arm || BR2_armeb || BR2_powerpc || BR2_sparc || BR2_sh || BR2_sh64
+ depends on BR2_arm || BR2_armeb || BR2_powerpc || BR2_sparc || \
+ BR2_sh || BR2_sh64 || BR2_xtensa
config BR2_LINUX_KERNEL_APPENDED_ZIMAGE
bool "zImage with appended DT"
diff --git a/package/autoconf/Config.in b/package/autoconf/Config.in
index c304572..3622f3d 100644
--- a/package/autoconf/Config.in
+++ b/package/autoconf/Config.in
@@ -1,6 +1,7 @@
config BR2_PACKAGE_AUTOCONF
bool "autoconf"
- depends on !(BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3 || BR2_sh3eb || BR2_sh64)
+ depends on !(BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3)
+ depends on !(BR2_sh3eb || BR2_sh64 || BR2_xtensa)
select BR2_PACKAGE_PERL
help
Extensible program for developing configure scripts. These
@@ -9,4 +10,5 @@ config BR2_PACKAGE_AUTOCONF
http://www.gnu.org/software/autoconf/
comment "autoconf requires an architecture supported by qemu"
- depends on BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3 || BR2_sh3eb || BR2_sh64
+ depends on BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3 || \
+ BR2_sh3eb || BR2_sh64 || BR2_xtensa
diff --git a/package/automake/Config.in b/package/automake/Config.in
index f8d74ef..6e48517 100644
--- a/package/automake/Config.in
+++ b/package/automake/Config.in
@@ -1,6 +1,7 @@
config BR2_PACKAGE_AUTOMAKE
bool "automake"
- depends on !(BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3 || BR2_sh3eb || BR2_sh64)
+ depends on !(BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3)
+ depends on !(BR2_sh3eb || BR2_sh64 || BR2_xtensa)
select BR2_PACKAGE_AUTOCONF
select BR2_PACKAGE_PERL
help
@@ -10,4 +11,5 @@ config BR2_PACKAGE_AUTOMAKE
http://www.gnu.org/software/automake/
comment "automake requires an architecture supported by qemu"
- depends on BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3 || BR2_sh3eb || BR2_sh64
+ depends on BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3 || \
+ BR2_sh3eb || BR2_sh64 || BR2_xtensa
diff --git a/package/ltrace/Config.in b/package/ltrace/Config.in
index a65ca48..4cce767 100644
--- a/package/ltrace/Config.in
+++ b/package/ltrace/Config.in
@@ -1,6 +1,7 @@
config BR2_PACKAGE_LTRACE
bool "ltrace"
depends on !(BR2_avr32 || BR2_mips || BR2_mipsel || BR2_sh || BR2_sh64)
+ depends on !BR2_xtensa
select BR2_PACKAGE_LIBELF
help
Debugging program which runs a specified command until it exits.
diff --git a/toolchain/Config.in b/toolchain/Config.in
index 29ed2f0..7edf82b 100644
--- a/toolchain/Config.in
+++ b/toolchain/Config.in
@@ -23,7 +23,7 @@ config BR2_TOOLCHAIN_EXTERNAL
config BR2_TOOLCHAIN_CTNG
bool "Crosstool-NG toolchain"
- depends on !BR2_microblaze && !BR2_aarch64
+ depends on !BR2_microblaze && !BR2_aarch64 && !BR2_xtensa
select BR2_TOOLCHAIN_HAS_SHADOW_PASSWORDS
select BR2_TOOLCHAIN_HAS_THREADS_DEBUG_IF_NEEDED
help
diff --git a/toolchain/toolchain-buildroot/Config.in.2 b/toolchain/toolchain-buildroot/Config.in.2
index 956ec2f..d27c9f3 100644
--- a/toolchain/toolchain-buildroot/Config.in.2
+++ b/toolchain/toolchain-buildroot/Config.in.2
@@ -68,7 +68,7 @@ config BR2_TOOLCHAIN_BUILDROOT_USE_SSP
choice
prompt "Thread library implementation"
- default BR2_PTHREADS_NATIVE if (!BR2_UCLIBC_VERSION_0_9_31) && !BR2_ARM_OABI
+ default BR2_PTHREADS_NATIVE if (!BR2_UCLIBC_VERSION_0_9_31) && !BR2_ARM_OABI && !BR2_xtensa
default BR2_PTHREADS_OLD
help
Use this option to select the thread library implementation
@@ -82,6 +82,7 @@ choice
config BR2_PTHREADS
bool "linuxthreads"
+ depends on !BR2_xtensa
select BR2_TOOLCHAIN_HAS_THREADS
config BR2_PTHREADS_OLD
@@ -94,6 +95,7 @@ choice
depends on !BR2_UCLIBC_VERSION_0_9_31
depends on !BR2_ARM_OABI
depends on !BR2_x86_i386
+ depends on !BR2_xtensa
endchoice
source "toolchain/elf2flt/Config.in"
diff --git a/toolchain/toolchain-common.in b/toolchain/toolchain-common.in
index 4c2a28b..9f11a39 100644
--- a/toolchain/toolchain-common.in
+++ b/toolchain/toolchain-common.in
@@ -93,7 +93,7 @@ config BR2_NEEDS_GETTEXT_IF_LOCALE
default y if (BR2_NEEDS_GETTEXT && BR2_ENABLE_LOCALE)
config BR2_USE_MMU
- bool "Enable MMU support" if BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_sh
+ bool "Enable MMU support" if BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_sh || BR2_xtensa
default y if !BR2_bfin
help
If your target has a MMU, you should say Y here. If you
diff --git a/toolchain/uClibc/Config.in b/toolchain/uClibc/Config.in
index f46a415..e47bc9b 100644
--- a/toolchain/uClibc/Config.in
+++ b/toolchain/uClibc/Config.in
@@ -12,14 +12,15 @@ choice
config BR2_UCLIBC_VERSION_0_9_31
bool "uClibc 0.9.31.x"
+ depends on !BR2_xtensa
config BR2_UCLIBC_VERSION_0_9_32
bool "uClibc 0.9.32.x"
- depends on !(BR2_avr32 || BR2_sh)
+ depends on !(BR2_avr32 || BR2_sh || BR2_xtensa)
config BR2_UCLIBC_VERSION_0_9_33
bool "uClibc 0.9.33.x"
- depends on !BR2_avr32
+ depends on !(BR2_avr32 || BR2_xtensa)
config BR2_UCLIBC_VERSION_SNAPSHOT
bool "daily snapshot"
diff --git a/toolchain/uClibc/uclibc.mk b/toolchain/uClibc/uclibc.mk
index 8cf59bc..055267c 100644
--- a/toolchain/uClibc/uclibc.mk
+++ b/toolchain/uClibc/uclibc.mk
@@ -38,6 +38,7 @@ UCLIBC_TARGET_ARCH:=$(shell $(SHELL) -c "echo $(ARCH) | sed \
-e 's/sh[234].*/sh/' \
-e 's/mips.*/mips/' \
-e 's/cris.*/cris/' \
+ -e 's/xtensa.*/xtensa/' \
")
UCLIBC_TARGET_ENDIAN:=$(call qstrip,$(BR2_ENDIAN))
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH 1/2 v3] xtensa: add support for the Xtensa architecture
2012-11-10 0:19 [Buildroot] [PATCH 1/2 v3] xtensa: add support for the Xtensa architecture Chris Zankel
@ 2012-11-10 0:38 ` Arnout Vandecappelle
2012-11-10 0:50 ` Chris Zankel
0 siblings, 1 reply; 3+ messages in thread
From: Arnout Vandecappelle @ 2012-11-10 0:38 UTC (permalink / raw)
To: buildroot
On 11/10/12 01:19, Chris Zankel wrote:
> diff --git a/package/autoconf/Config.in b/package/autoconf/Config.in
> index c304572..3622f3d 100644
> --- a/package/autoconf/Config.in
> +++ b/package/autoconf/Config.in
> @@ -1,6 +1,7 @@
> config BR2_PACKAGE_AUTOCONF
> bool "autoconf"
> - depends on !(BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3 || BR2_sh3eb || BR2_sh64)
> + depends on !(BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3)
> + depends on !(BR2_sh3eb || BR2_sh64 || BR2_xtensa)
> select BR2_PACKAGE_PERL
> help
> Extensible program for developing configure scripts. These
Actually, these dependencies can be removed again, because perl no longer
depends on host-qemu. I'll post a patch removing them.
And anyway, host-qemu exists for xtensa, no?
Regards,
Arnout
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286540
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Buildroot] [PATCH 1/2 v3] xtensa: add support for the Xtensa architecture
2012-11-10 0:38 ` Arnout Vandecappelle
@ 2012-11-10 0:50 ` Chris Zankel
0 siblings, 0 replies; 3+ messages in thread
From: Chris Zankel @ 2012-11-10 0:50 UTC (permalink / raw)
To: buildroot
HI Arnout,
On 11/09/2012 04:38 PM, Arnout Vandecappelle wrote:
> On 11/10/12 01:19, Chris Zankel wrote:
>> diff --git a/package/autoconf/Config.in b/package/autoconf/Config.in
>> index c304572..3622f3d 100644
>> --- a/package/autoconf/Config.in
>> +++ b/package/autoconf/Config.in
>> @@ -1,6 +1,7 @@
>> config BR2_PACKAGE_AUTOCONF
>> bool "autoconf"
>> - depends on !(BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3 || BR2_sh3eb || BR2_sh64)
>> + depends on !(BR2_avr32 || BR2_bfin || BR2_sh2 || BR2_sh2a || BR2_sh3)
>> + depends on !(BR2_sh3eb || BR2_sh64 || BR2_xtensa)
>> select BR2_PACKAGE_PERL
>> help
>> Extensible program for developing configure scripts. These
> Actually, these dependencies can be removed again, because perl no longer
> depends on host-qemu. I'll post a patch removing them.
So, I guess that breaks my patch ;-)
> And anyway, host-qemu exists for xtensa, no?
Yes, there is a version of Qemu that was done my Max, but it might
require a different processor configuration than what's in the toolchain
by default.
-Chris
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-11-10 0:50 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-11-10 0:19 [Buildroot] [PATCH 1/2 v3] xtensa: add support for the Xtensa architecture Chris Zankel
2012-11-10 0:38 ` Arnout Vandecappelle
2012-11-10 0:50 ` Chris Zankel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox