From dfed1fd20f9fbfa453aa7ff54356597d6d3e05b9 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Sat, 6 Dec 2014 02:58:35 +0100 Subject: add basic bits for c6x toolchains support --- target/arch.lst | 1 + target/c6x/Makefile | 9 ++ target/c6x/systems/toolchain-c6x | 11 ++ target/c6x/uclibc.config | 248 ++++++++++++++++++++++++++++++++++ target/config/Config.in.cpu | 4 + target/config/Config.in.endian.choice | 2 +- target/config/Config.in.toolchain | 4 +- 7 files changed, 277 insertions(+), 2 deletions(-) create mode 100644 target/c6x/Makefile create mode 100644 target/c6x/systems/toolchain-c6x create mode 100644 target/c6x/uclibc.config (limited to 'target') diff --git a/target/arch.lst b/target/arch.lst index fd5c9f80c..eb4a4a77e 100644 --- a/target/arch.lst +++ b/target/arch.lst @@ -4,6 +4,7 @@ arc arm avr32 bfin +c6x cris m68k microblaze diff --git a/target/c6x/Makefile b/target/c6x/Makefile new file mode 100644 index 000000000..ebc17340e --- /dev/null +++ b/target/c6x/Makefile @@ -0,0 +1,9 @@ +# 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.mk +include $(ADK_TOPDIR)/mk/modules.mk +include $(ADK_TOPDIR)/mk/kernel-build.mk +include $(ADK_TOPDIR)/mk/image.mk + diff --git a/target/c6x/systems/toolchain-c6x b/target/c6x/systems/toolchain-c6x new file mode 100644 index 000000000..f2a352446 --- /dev/null +++ b/target/c6x/systems/toolchain-c6x @@ -0,0 +1,11 @@ +config ADK_TARGET_SYSTEM_TOOLCHAIN_C6X + bool "Toolchain only" + select ADK_c6x + select ADK_toolchain_c6x + select ADK_CPU_C6X + select ADK_TARGET_TOOLCHAIN + select ADK_TARGET_PACKAGE_TXZ + select ADK_TARGET_UCLINUX + help + C6X toolchain. + diff --git a/target/c6x/uclibc.config b/target/c6x/uclibc.config new file mode 100644 index 000000000..9915cd324 --- /dev/null +++ b/target/c6x/uclibc.config @@ -0,0 +1,248 @@ +# +# Automatically generated file; DO NOT EDIT. +# uClibc 1.0.0-git C Library Configuration +# +# TARGET_alpha is not set +# TARGET_arc is not set +# TARGET_arm is not set +# TARGET_avr32 is not set +# TARGET_bfin is not set +TARGET_c6x=y +# TARGET_cris is not set +# TARGET_hppa is not set +# TARGET_i386 is not set +# TARGET_ia64 is not set +# TARGET_m68k is not set +# TARGET_metag is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nios2 is not set +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sh64 is not set +# TARGET_sparc is not set +# TARGET_vax is not set +# TARGET_x86_64 is not set +# TARGET_xtensa is not set + +# +# Target Architecture Features and Options +# +TARGET_ARCH="c6x" +FORCE_OPTIONS_FOR_ARCH=y +# CONFIG_CRIS is not set +# CONFIG_CRISV32 is not set +CONFIG_GENERIC_C6X=y +# CONFIG_TMS320C64X is not set +# CONFIG_TMS320C64XPLUS is not set +TARGET_SUBARCH="" +UCLIBC_FORMAT_DSBT_ELF=y +# UCLIBC_FORMAT_FLAT is not set +# UCLIBC_FORMAT_FLAT_SEP_DATA is not set +# UCLIBC_FORMAT_SHARED_FLAT is not set +ARCH_ANY_ENDIAN=y +ARCH_LITTLE_ENDIAN=y +# ARCH_WANTS_BIG_ENDIAN is not set +ARCH_WANTS_LITTLE_ENDIAN=y +ARCH_HAS_NO_MMU=y + +# +# Target CPU lacks a memory management unit (MMU) +# +UCLIBC_HAS_FLOATS=y +UCLIBC_HAS_FPU=y +DO_C99_MATH=y +# DO_XSI_MATH is not set +UCLIBC_HAS_FENV=y +KERNEL_HEADERS="" +UCLIBC_UCLINUX_BROKEN_MUNMAP=y +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +DOPIC=y +HAVE_SHARED=y +FORCE_SHAREABLE_TEXT_SEGMENTS=y +LDSO_LDD_SUPPORT=y +LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_ENV_SUPPORT is not set +# LDSO_PRELOAD_FILE_SUPPORT is not set +LDSO_BASE_FILENAME="ld.so" +# LDSO_STANDALONE_SUPPORT is not set +# LDSO_PRELINK_SUPPORT is not set +# UCLIBC_STATIC_LDCONFIG is not set +LDSO_RUNPATH=y +LDSO_SAFE_RUNPATH=y +LDSO_SEARCH_INTERP_PATH=y +LDSO_LD_LIBRARY_PATH=y +# LDSO_NO_CLEANUP is not set +UCLIBC_CTOR_DTOR=y +# LDSO_GNU_HASH_SUPPORT is not set +# HAS_NO_THREADS is not set +# LINUXTHREADS_OLD is not set +# LINUXTHREADS_NEW is not set +UCLIBC_HAS_THREADS_NATIVE=y +UCLIBC_HAS_THREADS=y +PTHREADS_DEBUG_SUPPORT=y +UCLIBC_HAS_SYSLOG=y +UCLIBC_HAS_LFS=y +MALLOC=y +# MALLOC_SIMPLE is not set +# MALLOC_STANDARD is not set +MALLOC_GLIBC_COMPAT=y +UCLIBC_HAS_OBSTACK=y +UCLIBC_DYNAMIC_ATEXIT=y +COMPAT_ATEXIT=y +UCLIBC_SUSV2_LEGACY=y +UCLIBC_SUSV3_LEGACY=y +# UCLIBC_SUSV3_LEGACY_MACROS is not set +UCLIBC_SUSV4_LEGACY=y +# UCLIBC_STRICT_HEADERS is not set +# UCLIBC_HAS_STUBS is not set +UCLIBC_HAS_SHADOW=y +UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y +UCLIBC_HAS___PROGNAME=y +UCLIBC_HAS_PTY=y +ASSUME_DEVPTS=y +UNIX98PTY_ONLY=y +UCLIBC_HAS_GETPT=y +UCLIBC_HAS_LIBUTIL=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" +UCLIBC_FALLBACK_TO_ETC_LOCALTIME=y + +# +# Advanced Library Settings +# +UCLIBC_PWD_BUFFER_SIZE=256 +UCLIBC_GRP_BUFFER_SIZE=256 + +# +# Support various families of functions +# +UCLIBC_LINUX_MODULE_26=y +UCLIBC_LINUX_SPECIFIC=y +UCLIBC_HAS_GNU_ERROR=y +UCLIBC_BSD_SPECIFIC=y +UCLIBC_HAS_BSD_ERR=y +UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y +# UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set +# UCLIBC_NTP_LEGACY is not set +UCLIBC_SV4_DEPRECATED=y +UCLIBC_HAS_REALTIME=y +UCLIBC_HAS_ADVANCED_REALTIME=y +UCLIBC_HAS_EPOLL=y +UCLIBC_HAS_XATTR=y +# UCLIBC_HAS_PROFILING is not set +UCLIBC_HAS_CRYPT_IMPL=y +# UCLIBC_HAS_SHA256_CRYPT_IMPL is not set +# UCLIBC_HAS_SHA512_CRYPT_IMPL is not set +UCLIBC_HAS_CRYPT=y +UCLIBC_HAS_NETWORK_SUPPORT=y +UCLIBC_HAS_SOCKET=y +UCLIBC_HAS_IPV4=y +UCLIBC_HAS_IPV6=y +# UCLIBC_HAS_RPC is not set +UCLIBC_USE_NETLINK=y +UCLIBC_SUPPORT_AI_ADDRCONFIG=y +UCLIBC_HAS_BSD_RES_CLOSE=y +UCLIBC_HAS_COMPAT_RES_STATE=y +# UCLIBC_HAS_EXTRA_COMPAT_RES_STATE is not set +UCLIBC_HAS_RESOLVER_SUPPORT=y +UCLIBC_HAS_LIBRESOLV_STUB=y +UCLIBC_HAS_LIBNSL_STUB=y + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +UCLIBC_HAS_STRING_ARCH_OPT=y +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +# UCLIBC_HAS_LOCALE is not set +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +UCLIBC_HAS_STDIO_BUFSIZ_4096=y +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +# UCLIBC_HAS_FOPEN_CLOSEEXEC_MODE is not set +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y +UCLIBC_HAS_GNU_GETSUBOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +# UCLIBC_HAS_REGEX_OLD is not set +UCLIBC_HAS_FNMATCH=y +# UCLIBC_HAS_FNMATCH_OLD is not set +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_NFTW=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_FTS=y +UCLIBC_HAS_GLOB=y +UCLIBC_HAS_GNU_GLOB=y +UCLIBC_HAS_UTMPX=y + +# +# Library Installation Options +# +RUNTIME_PREFIX="/" +DEVEL_PREFIX="/usr/" +MULTILIB_DIR="lib" +HARDWIRED_ABSPATH=y + +# +# Security options +# +UCLIBC_HAS_ARC4RANDOM=y +# ARC4RANDOM_USES_NODEV is not set +# UCLIBC_HAS_SSP is not set +UCLIBC_BUILD_RELRO=y +UCLIBC_BUILD_NOW=y +UCLIBC_BUILD_NOEXECSTACK=y + +# +# Development/debugging options +# +CROSS_COMPILER_PREFIX="" +UCLIBC_EXTRA_CFLAGS="" +# DODEBUG is not set +# DODEBUG_PT is not set +# DOSTRIP is not set +# DOASSERTS is not set +# SUPPORT_LD_DEBUG is not set +# SUPPORT_LD_DEBUG_EARLY is not set +# UCLIBC_MALLOC_DEBUGGING is not set +# UCLIBC_HAS_BACKTRACE is not set +WARNINGS="-Wall" +# EXTRA_WARNINGS is not set +# DOMULTI is not set +# UCLIBC_MJN3_ONLY is not set diff --git a/target/config/Config.in.cpu b/target/config/Config.in.cpu index afb99ebc9..4e77bcf63 100644 --- a/target/config/Config.in.cpu +++ b/target/config/Config.in.cpu @@ -49,6 +49,9 @@ config ADK_CPU_ARC config ADK_CPU_TILE boolean +config ADK_CPU_C6X + boolean + config ADK_CPU_CRIS_V10 boolean @@ -144,6 +147,7 @@ config ADK_TARGET_CPU_ARCH default "arceb" if ADK_CPU_ARC && ADK_big default "avr32" if ADK_CPU_AVR32 default "bfin" if ADK_CPU_BFIN + default "c6x" if ADK_CPU_C6X default "cris" if ADK_CPU_CRIS_V10 default "crisv32" if ADK_CPU_CRIS_V32 default "i486" if ADK_CPU_I486 diff --git a/target/config/Config.in.endian.choice b/target/config/Config.in.endian.choice index 4e866b6c5..f2a0ed5e3 100644 --- a/target/config/Config.in.endian.choice +++ b/target/config/Config.in.endian.choice @@ -5,7 +5,7 @@ choice ADK_TARGET_ENDIAN_MODE prompt "Target Endianess" depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM depends on ADK_LINUX_SH || ADK_LINUX_MIPS || ADK_LINUX_MICROBLAZE \ - || ADK_LINUX_MIPS64 || ADK_LINUX_ARC || ADK_LINUX_ARM + || ADK_LINUX_MIPS64 || ADK_LINUX_ARC || ADK_LINUX_ARM || ADK_LINUX_C6X depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532 depends on !ADK_TARGET_SYSTEM_LEMOTE_YEELONG depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI diff --git a/target/config/Config.in.toolchain b/target/config/Config.in.toolchain index 70d6080ec..009ce19ee 100644 --- a/target/config/Config.in.toolchain +++ b/target/config/Config.in.toolchain @@ -26,7 +26,7 @@ config ADK_TOOLCHAIN_GCC_4_5_4 config ADK_TOOLCHAIN_GCC_4_7_4 prompt "4.7.4" boolean - depends on ADK_LINUX_CRIS + depends on ADK_LINUX_CRIS || ADK_LINUX_C6X config ADK_TOOLCHAIN_GCC_4_8_0_ARC prompt "4.8.0-arc" @@ -42,6 +42,7 @@ config ADK_TOOLCHAIN_GCC_4_8_3 depends on !ADK_LINUX_AVR32 depends on !ADK_LINUX_CRIS depends on !ADK_LINUX_TILE + depends on !ADK_LINUX_C6X config ADK_TOOLCHAIN_GCC_4_9_1 prompt "4.9.1" @@ -50,6 +51,7 @@ config ADK_TOOLCHAIN_GCC_4_9_1 depends on !ADK_LINUX_ARC depends on !ADK_LINUX_AVR32 depends on !ADK_LINUX_CRIS + depends on !ADK_LINUX_C6X config ADK_TOOLCHAIN_GCC_GIT prompt "git" -- cgit v1.2.3 From 142b50071ac4ed5124c8172ca7d30e351e465768 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Fri, 5 Dec 2014 20:59:15 -0600 Subject: add basic support for linksys nslu2 (arm big endian platform) --- target/arm/kernel/linksys-nslu2 | 5 +++++ target/arm/systems/linksys-nslu2 | 11 +++++++++++ target/config/Config.in.endian.choice | 1 + target/config/Config.in.kernel | 1 + 4 files changed, 18 insertions(+) create mode 100644 target/arm/kernel/linksys-nslu2 create mode 100644 target/arm/systems/linksys-nslu2 (limited to 'target') diff --git a/target/arm/kernel/linksys-nslu2 b/target/arm/kernel/linksys-nslu2 new file mode 100644 index 000000000..19cffbe68 --- /dev/null +++ b/target/arm/kernel/linksys-nslu2 @@ -0,0 +1,5 @@ +CONFIG_ARM=y +CONFIG_ARM_PATCH_PHYS_VIRT=y +CONFIG_CPU_XSCALE=y +CONFIG_ATAGS=y +CONFIG_ATAGS_PROC=y diff --git a/target/arm/systems/linksys-nslu2 b/target/arm/systems/linksys-nslu2 new file mode 100644 index 000000000..dd72c5cae --- /dev/null +++ b/target/arm/systems/linksys-nslu2 @@ -0,0 +1,11 @@ +config ADK_TARGET_SYSTEM_LINKSYS_NSLU2 + bool "Linksys NSLU2" + select ADK_arm + select ADK_big + select ADK_eabihf + select ADK_linksys_nslu2 + select ADK_TARGET_WITH_USB + select ADK_TARGET_KERNEL_ZIMAGE + help + Linksys NSLU2 + diff --git a/target/config/Config.in.endian.choice b/target/config/Config.in.endian.choice index f2a0ed5e3..197754099 100644 --- a/target/config/Config.in.endian.choice +++ b/target/config/Config.in.endian.choice @@ -11,6 +11,7 @@ depends on !ADK_TARGET_SYSTEM_LEMOTE_YEELONG depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 depends on !ADK_TARGET_SYSTEM_QEMU_ARM +depends on !ADK_TARGET_SYSTEM_LINKSYS_NSLU2 config ADK_TARGET_LITTLE_ENDIAN boolean "Little endian" diff --git a/target/config/Config.in.kernel b/target/config/Config.in.kernel index add212587..b8f308474 100644 --- a/target/config/Config.in.kernel +++ b/target/config/Config.in.kernel @@ -59,6 +59,7 @@ config ADK_TARGET_KERNEL_MINICONFIG default "solidrun-imx6" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 default "raspberry-pi" if ADK_TARGET_SYSTEM_RASPBERRY_PI default "sharp-zaurus" if ADK_TARGET_SYSTEM_SHARP_ZAURUS + default "linksys-nslu2" if ADK_TARGET_SYSTEM_LINKSYS_NSLU2 default "lemote-yeelong" if ADK_TARGET_SYSTEM_LEMOTE_YEELONG default "mikrotik-rb4xx" if ADK_TARGET_SYSTEM_MIKROTIK_RB4XX default "mikrotik-rb532" if ADK_TARGET_SYSTEM_MIKROTIK_RB532 -- cgit v1.2.3