From 0011de4cb7e3a743a5ebd5870ea3402b2d60c972 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Thu, 25 Feb 2016 00:00:49 +0100 Subject: add basic newlib toolchain support for moxie --- target/arch.lst | 1 + target/config/Config.in.binutils | 3 ++ target/config/Config.in.cpu | 5 ++++ target/config/Config.in.libc | 3 ++ target/moxie/Makefile | 56 ++++++++++++++++++++++++++++++++++++ target/moxie/systems/toolchain-moxie | 8 ++++++ 6 files changed, 76 insertions(+) create mode 100644 target/moxie/Makefile create mode 100644 target/moxie/systems/toolchain-moxie (limited to 'target') diff --git a/target/arch.lst b/target/arch.lst index 4c4cfa33d..440b04277 100644 --- a/target/arch.lst +++ b/target/arch.lst @@ -16,6 +16,7 @@ metag microblaze mips mips64 +moxie nds32 nios2 or1k diff --git a/target/config/Config.in.binutils b/target/config/Config.in.binutils index 9af86b3ef..81d1546d7 100644 --- a/target/config/Config.in.binutils +++ b/target/config/Config.in.binutils @@ -8,6 +8,7 @@ default ADK_TOOLCHAIN_BINUTILS_2_23_ARC if ADK_TARGET_ARCH_ARC default ADK_TOOLCHAIN_BINUTILS_2_26 if ADK_TARGET_ARCH_XTENSA && ADK_TARGET_WITHOUT_MMU default ADK_TOOLCHAIN_BINUTILS_2_26 if ADK_TARGET_ARCH_BFIN default ADK_TOOLCHAIN_BINUTILS_2_26 if ADK_TARGET_ARCH_H8300 +default ADK_TOOLCHAIN_BINUTILS_2_26 if ADK_TARGET_ARCH_MOXIE default ADK_TOOLCHAIN_BINUTILS_2_25_1 config ADK_TOOLCHAIN_BINUTILS_GIT @@ -28,6 +29,7 @@ config ADK_TOOLCHAIN_BINUTILS_2_25_1 depends on !ADK_TARGET_ARCH_ARC depends on !ADK_TARGET_ARCH_AVR32 depends on !ADK_TARGET_ARCH_H8300 + depends on !ADK_TARGET_ARCH_MOXIE depends on !ADK_CPU_CRIS_V10 config ADK_TOOLCHAIN_BINUTILS_2_24 @@ -37,6 +39,7 @@ config ADK_TOOLCHAIN_BINUTILS_2_24 depends on !ADK_TARGET_ARCH_AVR32 depends on !ADK_TARGET_ARCH_CRIS depends on !ADK_TARGET_ARCH_H8300 + depends on !ADK_TARGET_ARCH_MOXIE config ADK_TOOLCHAIN_BINUTILS_2_23_ARC bool "2.23-arc" diff --git a/target/config/Config.in.cpu b/target/config/Config.in.cpu index 89f5a68ab..e8ebcf8bb 100644 --- a/target/config/Config.in.cpu +++ b/target/config/Config.in.cpu @@ -844,6 +844,10 @@ config ADK_CPU_MICROBLAZE select ADK_TARGET_WITH_MMU if !ADK_LINUX_UCLINUX select ADK_TARGET_WITH_NPTL if ADK_TARGET_LIB_GLIBC || ADK_TARGET_LIB_MUSL +config ADK_CPU_MOXIE + bool + select ADK_TARGET_WITH_MMU + config ADK_CPU_NDS32 bool select ADK_TARGET_WITH_NPTL @@ -1382,6 +1386,7 @@ config ADK_TARGET_CPU_ARCH default "mips64el" if ADK_TARGET_ARCH_MIPS64 && ADK_TARGET_LITTLE_ENDIAN default "mips" if ADK_TARGET_ARCH_MIPS && ADK_TARGET_BIG_ENDIAN default "mipsel" if ADK_TARGET_ARCH_MIPS && ADK_TARGET_LITTLE_ENDIAN + default "moxie" if ADK_TARGET_ARCH_MOXIE default "nds32le" if ADK_TARGET_ARCH_NDS32 && ADK_TARGET_LITTLE_ENDIAN default "nds32be" if ADK_TARGET_ARCH_NDS32 && ADK_TARGET_BIG_ENDIAN default "nios2" if ADK_TARGET_ARCH_NIOS2 diff --git a/target/config/Config.in.libc b/target/config/Config.in.libc index 84c990e2f..f459c6af2 100644 --- a/target/config/Config.in.libc +++ b/target/config/Config.in.libc @@ -8,6 +8,7 @@ config ADK_TARGET_LIB_UCLIBC_NG bool "uClibc-ng embedded C library" depends on \ !ADK_TARGET_ARCH_AARCH64 && \ + !ADK_TARGET_ARCH_MOXIE && \ !ADK_TARGET_ARCH_NDS32 && \ !ADK_TARGET_ARCH_S390 && \ !ADK_TARGET_ARCH_SPARC64 && \ @@ -40,6 +41,7 @@ config ADK_TARGET_LIB_GLIBC depends on !ADK_TARGET_ARCH_BFIN depends on !ADK_TARGET_ARCH_CRIS depends on !ADK_TARGET_ARCH_H8300 + depends on !ADK_TARGET_ARCH_MOXIE depends on !ADK_TARGET_ARCH_NDS32 depends on !ADK_TARGET_ARCH_SPARC depends on !ADK_TARGET_ARCH_XTENSA @@ -60,6 +62,7 @@ config ADK_TARGET_LIB_NEWLIB ADK_TARGET_ARCH_LM32 || \ ADK_TARGET_ARCH_MICROBLAZE || \ ADK_TARGET_ARCH_MIPS || \ + ADK_TARGET_ARCH_MOXIE || \ ADK_TARGET_ARCH_NDS32 || \ ADK_TARGET_ARCH_OR1K || \ ADK_TARGET_ARCH_PPC || \ diff --git a/target/moxie/Makefile b/target/moxie/Makefile new file mode 100644 index 000000000..3d8f8d42b --- /dev/null +++ b/target/moxie/Makefile @@ -0,0 +1,56 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(ADK_TOPDIR)/rules.mk +include $(ADK_TOPDIR)/mk/kernel-build.mk +include $(ADK_TOPDIR)/mk/image.mk + +KERNEL:=$(LINUX_DIR)/$(ADK_TARGET_KERNEL) + +# target helper text +ifeq ($(ADK_TARGET_FS),archive) +targethelp: + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)" +endif +ifeq ($(ADK_TARGET_FS),initramfs) +targethelp: + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}' +endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +targethelp: + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif +ifeq ($(ADK_TARGET_FS),initramfspiggyback) +targethelp: + @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}' +endif +ifeq ($(ADK_TARGET_FS),nfsroot) +targethelp: + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif + +kernel-strip: + @cp $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL) + +kernel-install: kernel-strip + @cp $(BUILD_DIR)/$(TARGET_KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + +# filesystem specific targets +ifeq ($(ADK_TARGET_FS),archive) +imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) targethelp +endif +ifeq ($(ADK_TARGET_FS),initramfs) +imageinstall: kernel-install $(FW_DIR)/$(INITRAMFS) targethelp +endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp +endif +ifeq ($(ADK_TARGET_FS),initramfspiggyback) +imageinstall: createinitramfs targethelp +endif +ifeq ($(ADK_TARGET_FS),nfsroot) +imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp +endif diff --git a/target/moxie/systems/toolchain-moxie b/target/moxie/systems/toolchain-moxie new file mode 100644 index 000000000..8176adf16 --- /dev/null +++ b/target/moxie/systems/toolchain-moxie @@ -0,0 +1,8 @@ +config ADK_TARGET_SYSTEM_TOOLCHAIN_MOXIE + bool "Toolchain only" + select ADK_CPU_MOXIE + select ADK_TARGET_TOOLCHAIN + select ADK_TARGET_PACKAGE_TXZ + help + MOXIE toolchain. + -- cgit v1.2.3