diff options
Diffstat (limited to 'target/riscv32')
-rw-r--r-- | target/riscv32/Makefile | 21 | ||||
-rw-r--r-- | target/riscv32/kernel/qemu-riscv32 | 9 | ||||
-rw-r--r-- | target/riscv32/uclibc-ng-nommu.config | 230 | ||||
-rw-r--r-- | target/riscv32/uclibc-ng.config | 22 |
4 files changed, 258 insertions, 24 deletions
diff --git a/target/riscv32/Makefile b/target/riscv32/Makefile index 37750d763..3d34f7f09 100644 --- a/target/riscv32/Makefile +++ b/target/riscv32/Makefile @@ -6,7 +6,10 @@ include $(ADK_TOPDIR)/mk/kernel-build.mk include $(ADK_TOPDIR)/mk/image.mk KERNEL:=$(LINUX_DIR)/arch/riscv/boot/Image -QEMU_ARGS:=-M virt -m 256 -nographic -device loader,file=$(FW_DIR)/$(TARGET_KERNEL),addr=0x80200000 +QEMU_ARGS:=-M virt -m 512 -nographic +ifeq ($(ADK_TARGET_WITH_MMU),) +QEMU_ARGS+=-bios none +endif ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO),y) QEMU_ARGS+=-netdev user,id=eth0 -device virtio-net-device,netdev=eth0 endif @@ -45,7 +48,7 @@ targethelp: @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}' ifeq ($(ADK_TARGET_QEMU),y) @echo "Start qemu with following command line:" - @echo 'qemu-system-riscv32 ${QEMU_ARGS} -kernel $(FW_DIR)/fw_jump.elf' + @echo 'qemu-system-riscv32 ${QEMU_ARGS} -kernel $(FW_DIR)/$(TARGET_KERNEL)' endif endif @@ -54,21 +57,13 @@ kernel-strip: kernel-install: kernel-strip @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) -bbl: - @rm -rf $(BUILD_DIR)/opensbi - (cd $(BUILD_DIR)/ && git clone https://github.com/riscv/opensbi.git) - (cd $(BUILD_DIR)/opensbi && PATH='$(HOST_PATH)' \ - CROSS_COMPILE=$(GNU_TARGET_NAME)- \ - PLATFORM=qemu/virt make) - cp $(BUILD_DIR)/opensbi/build/platform/qemu/virt/firmware/fw_jump.elf $(FW_DIR) - # filesystem specific targets ifeq ($(ADK_TARGET_FS),initramfs) -imageinstall: kernel-install bbl $(FW_DIR)/$(INITRAMFS) targethelp +imageinstall: kernel-install $(FW_DIR)/$(INITRAMFS) targethelp endif ifeq ($(ADK_TARGET_FS),initramfsarchive) -imageinstall: kernel-install bbl $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp +imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp endif ifeq ($(ADK_TARGET_FS),initramfspiggyback) -imageinstall: createinitramfs bbl targethelp +imageinstall: createinitramfs targethelp endif diff --git a/target/riscv32/kernel/qemu-riscv32 b/target/riscv32/kernel/qemu-riscv32 index ab8ffb263..18c6f367d 100644 --- a/target/riscv32/kernel/qemu-riscv32 +++ b/target/riscv32/kernel/qemu-riscv32 @@ -1,7 +1,6 @@ CONFIG_RISCV=y -CONFIG_ARCH_RV32I=y -CONFIG_CMODEL_MEDANY=y -CONFIG_CPU_RV_GENERIC=y -CONFIG_RV_SYSRISCV_ATOMIC=y -CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y CONFIG_32BIT=y +CONFIG_COMPAT_32BIT_TIME=y +CONFIG_ARCH_RV32I=y +CONFIG_SOC_VIRT=y +CONFIG_NONPORTABLE=y diff --git a/target/riscv32/uclibc-ng-nommu.config b/target/riscv32/uclibc-ng-nommu.config new file mode 100644 index 000000000..f37db1615 --- /dev/null +++ b/target/riscv32/uclibc-ng-nommu.config @@ -0,0 +1,230 @@ +# +# Automatically generated file; DO NOT EDIT. +# uClibc-ng 1.0.47 C Library Configuration +# +# TARGET_aarch64 is not set +# 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 is not set +# TARGET_cris is not set +# TARGET_csky is not set +# TARGET_frv is not set +# TARGET_h8300 is not set +# TARGET_hppa is not set +# TARGET_i386 is not set +# TARGET_ia64 is not set +# TARGET_kvx is not set +# TARGET_lm32 is not set +# TARGET_m68k is not set +# TARGET_metag is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +# TARGET_nds32 is not set +# TARGET_nios2 is not set +# TARGET_or1k is not set +# TARGET_powerpc is not set +# TARGET_riscv64 is not set +TARGET_riscv32=y +# TARGET_sh is not set +# TARGET_sparc is not set +# TARGET_sparc64 is not set +# TARGET_tile is not set +# TARGET_x86_64 is not set +# TARGET_xtensa is not set +TARGET_LDSO_NAME="ld-uClibc" +TARGET_ARCH_BITS=32 + +# +# Target Architecture Features and Options +# +TARGET_ARCH="riscv32" +FORCE_OPTIONS_FOR_ARCH=y +TARGET_SUBARCH="" +# UCLIBC_FORMAT_ELF is not set +UCLIBC_FORMAT_FLAT=y +# UCLIBC_FORMAT_FLAT_SEP_DATA is not set +# UCLIBC_FORMAT_SHARED_FLAT is not set +ARCH_LITTLE_ENDIAN=y + +# +# Using Little Endian +# +ARCH_HAS_MMU=y +# ARCH_USE_MMU is not set +UCLIBC_HAS_FLOATS=y +UCLIBC_HAS_FPU=y +DO_C99_MATH=y +DO_XSI_MATH=y +UCLIBC_HAS_LONG_DOUBLE_MATH=y +KERNEL_HEADERS="" +UCLIBC_UCLINUX_BROKEN_MUNMAP=y +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +# DOPIC is not set +ARCH_HAS_NO_SHARED=y +ARCH_HAS_NO_LDSO=y +UCLIBC_CTOR_DTOR=y +# HAS_NO_THREADS is not set +UCLIBC_HAS_LINUXTHREADS=y +UCLIBC_HAS_THREADS=y +# PTHREADS_DEBUG_SUPPORT is not set +PTHREADS_STACK_DEFAULT_SIZE=2097152 +UCLIBC_HAS_SYSLOG=y +UCLIBC_HAS_LFS=y +MALLOC=y +# MALLOC_SIMPLE is not set +UCLIBC_DYNAMIC_ATEXIT=y +UCLIBC_HAS_UTMPX=y +UCLIBC_HAS_UTMP=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 +UCLIBC_USE_TIME64=y + +# +# Advanced Library Settings +# +UCLIBC_PWD_BUFFER_SIZE=256 +UCLIBC_GRP_BUFFER_SIZE=256 + +# +# Support various families of functions +# +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_BSD_B64_NTOP_B64_PTON is not set +# 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=y +UCLIBC_HAS_SHA512_CRYPT_IMPL=y +UCLIBC_HAS_CRYPT=y +UCLIBC_HAS_NETWORK_SUPPORT=y +UCLIBC_HAS_SOCKET=y +UCLIBC_HAS_IPV4=y +UCLIBC_HAS_IPV6=y +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_DNSRAND_MODE_URANDOM is not set +# UCLIBC_DNSRAND_MODE_CLOCK is not set +UCLIBC_DNSRAND_MODE_PRNGPLUS=y +# UCLIBC_DNSRAND_MODE_SIMPLECOUNTER is not set + +# +# 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_LIBICONV is not set +# UCLIBC_HAS_LIBINTL is not set +# UCLIBC_HAS_LOCALE is not set +# UCLIBC_HAS_HEXADECIMAL_FLOATS is not set +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=y +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_GETOPT_LONG=y +UCLIBC_HAS_GNU_GETSUBOPT=y +UCLIBC_HAS_ARGP=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +UCLIBC_HAS_FNMATCH=y +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 + +# +# Library Installation Options +# +RUNTIME_PREFIX="/" +DEVEL_PREFIX="/usr/" +MULTILIB_DIR="lib" +HARDWIRED_ABSPATH=y + +# +# Security options +# +# UCLIBC_HAS_SSP is not set +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 +# UCLIBC_MALLOC_DEBUGGING is not set +WARNINGS="-Wall" +# EXTRA_WARNINGS is not set diff --git a/target/riscv32/uclibc-ng.config b/target/riscv32/uclibc-ng.config index 520ff6f8e..63047370c 100644 --- a/target/riscv32/uclibc-ng.config +++ b/target/riscv32/uclibc-ng.config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# uClibc-ng 1.0.32 C Library Configuration +# uClibc-ng 1.0.45 C Library Configuration # # TARGET_aarch64 is not set # TARGET_alpha is not set @@ -16,6 +16,7 @@ # TARGET_hppa is not set # TARGET_i386 is not set # TARGET_ia64 is not set +# TARGET_kvx is not set # TARGET_lm32 is not set # TARGET_m68k is not set # TARGET_metag is not set @@ -25,14 +26,16 @@ # TARGET_nios2 is not set # TARGET_or1k is not set # TARGET_powerpc is not set -TARGET_riscv32=y # TARGET_riscv64 is not set +TARGET_riscv32=y # TARGET_sh is not set # TARGET_sparc is not set # TARGET_sparc64 is not set # TARGET_tile is not set # TARGET_x86_64 is not set # TARGET_xtensa is not set +TARGET_LDSO_NAME="ld-uClibc" +TARGET_ARCH_BITS=32 # # Target Architecture Features and Options @@ -63,11 +66,12 @@ HAVE_DOT_CONFIG=y # General Library Settings # DOPIC=y +HAVE_LDSO=y HAVE_SHARED=y # FORCE_SHAREABLE_TEXT_SEGMENTS is not set LDSO_LDD_SUPPORT=y LDSO_CACHE_SUPPORT=y -LDSO_PRELOAD_ENV_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 @@ -81,11 +85,11 @@ LDSO_LD_LIBRARY_PATH=y UCLIBC_CTOR_DTOR=y # LDSO_GNU_HASH_SUPPORT is not set # HAS_NO_THREADS is not set -# UCLIBC_HAS_LINUXTHREADS is not set UCLIBC_HAS_THREADS_NATIVE=y UCLIBC_HAS_THREADS=y UCLIBC_HAS_TLS=y -# PTHREADS_DEBUG_SUPPORT is not set +PTHREADS_DEBUG_SUPPORT=y +PTHREADS_STACK_DEFAULT_SIZE=2097152 UCLIBC_HAS_SYSLOG=y UCLIBC_HAS_LFS=y # MALLOC is not set @@ -114,6 +118,7 @@ UCLIBC_HAS_TZ_FILE=y UCLIBC_HAS_TZ_FILE_READ_MANY=y UCLIBC_TZ_FILE_PATH="/etc/TZ" UCLIBC_FALLBACK_TO_ETC_LOCALTIME=y +UCLIBC_USE_TIME64=y # # Advanced Library Settings @@ -129,6 +134,7 @@ UCLIBC_HAS_GNU_ERROR=y UCLIBC_BSD_SPECIFIC=y UCLIBC_HAS_BSD_ERR=y UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y +# UCLIBC_HAS_BSD_B64_NTOP_B64_PTON is not set # UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set # UCLIBC_NTP_LEGACY is not set UCLIBC_SV4_DEPRECATED=y @@ -151,6 +157,10 @@ 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_DNSRAND_MODE_URANDOM is not set +# UCLIBC_DNSRAND_MODE_CLOCK is not set +UCLIBC_DNSRAND_MODE_PRNGPLUS=y +# UCLIBC_DNSRAND_MODE_SIMPLECOUNTER is not set # # String and Stdio Support @@ -238,4 +248,4 @@ UCLIBC_EXTRA_CFLAGS="" # UCLIBC_MALLOC_DEBUGGING is not set # UCLIBC_HAS_BACKTRACE is not set WARNINGS="-Wall" -# EXTRA_WARNINGS is not set +EXTRA_WARNINGS=y |