summaryrefslogtreecommitdiff
path: root/toolchain/uClibc
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2016-02-18 08:22:17 +0000
committerJohn Crispin <john@openwrt.org>2016-02-18 08:22:17 +0000
commit7b821a5ae882cb0c70fd9d09ec9d5952985951dc (patch)
treeea5ce1cda7bc5f967859c6f85947ba857f241fcf /toolchain/uClibc
parent7a29f7c22d0d13f51411282d7294aec1862e235f (diff)
downloadmtk-20170518-7b821a5ae882cb0c70fd9d09ec9d5952985951dc.zip
mtk-20170518-7b821a5ae882cb0c70fd9d09ec9d5952985951dc.tar.gz
mtk-20170518-7b821a5ae882cb0c70fd9d09ec9d5952985951dc.tar.bz2
toolchain: add support of ARCv2 architecture
This change adds support of ARC ISAv2 processors in OpenWRT toolchain. In general gcc for ARC may compile code for both ISA versions simultaneously but libgcc will be built only for default architecture that's why it's necessary to specify --with-cpu on gcc configuration. As for uClibc we need to use different configurations for different ARC ISAs. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Felix Fietkau <nbd@openwrt.org> Cc: Jo-Philipp Wich <jow@openwrt.org> Cc: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 48739
Diffstat (limited to 'toolchain/uClibc')
-rw-r--r--toolchain/uClibc/common.mk3
-rw-r--r--toolchain/uClibc/config/archs10
2 files changed, 12 insertions, 1 deletions
diff --git a/toolchain/uClibc/common.mk b/toolchain/uClibc/common.mk
index ad6ff02..2828156 100644
--- a/toolchain/uClibc/common.mk
+++ b/toolchain/uClibc/common.mk
@@ -41,8 +41,9 @@ GEN_CONFIG=$(SCRIPT_DIR)/kconfig.pl -n \
$(if $(CONFIG_UCLIBC_ENABLE_DEBUG),$(if $(wildcard $(CONFIG_DIR)/debug),'+' $(CONFIG_DIR)/debug)) \
$(CONFIG_DIR)/$(ARCH)$(strip \
$(if $(wildcard $(CONFIG_DIR)/$(ARCH).$(BOARD)),.$(BOARD), \
+ $(if $(filter archs,$(subst ",,$(CONFIG_CPU_TYPE))),hs, \
$(if $(CONFIG_MIPS64_ABI),.$(subst ",,$(CONFIG_MIPS64_ABI)), \
- $(if $(CONFIG_HAS_SPE_FPU),$(if $(wildcard $(CONFIG_DIR)/$(ARCH).e500),.e500)))))
+ $(if $(CONFIG_HAS_SPE_FPU),$(if $(wildcard $(CONFIG_DIR)/$(ARCH).e500),.e500))))))
CPU_CFLAGS = \
-funsigned-char -fno-builtin -fno-asm \
diff --git a/toolchain/uClibc/config/archs b/toolchain/uClibc/config/archs
new file mode 100644
index 0000000..961628e
--- /dev/null
+++ b/toolchain/uClibc/config/archs
@@ -0,0 +1,10 @@
+ARCH_ANY_ENDIAN=y
+ARCH_LITTLE_ENDIAN=y
+ARCH_WANTS_LITTLE_ENDIAN=y
+TARGET_ARCH="arc"
+TARGET_arc=y
+# CONFIG_ARC_CPU_700 is not set
+CONFIG_ARC_CPU_HS=y
+CONFIG_ARC_PAGE_SIZE_8K=y
+# CONFIG_ARC_PAGE_SIZE_16K is not set
+# CONFIG_ARC_PAGE_SIZE_4K is not set