summaryrefslogtreecommitdiff
path: root/target/riscv64
diff options
context:
space:
mode:
Diffstat (limited to 'target/riscv64')
-rw-r--r--target/riscv64/Makefile6
-rw-r--r--target/riscv64/kernel/qemu-riscv643
-rw-r--r--target/riscv64/kernel/sipeed-maixduino9
-rw-r--r--target/riscv64/kernel/starfive-visionfive238
-rw-r--r--target/riscv64/systems/sipeed-maixduino7
-rw-r--r--target/riscv64/uclibc-ng.config6
6 files changed, 27 insertions, 42 deletions
diff --git a/target/riscv64/Makefile b/target/riscv64/Makefile
index 55134d24e..4283064e5 100644
--- a/target/riscv64/Makefile
+++ b/target/riscv64/Makefile
@@ -10,10 +10,7 @@ QEMU_ARGS:=-M virt -m 512 -nographic
ifeq ($(ADK_TARGET_WITH_MMU),)
QEMU_ARGS+=-bios none -cpu rv64,mmu=off
endif
-
-ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO),y)
QEMU_ARGS+=-netdev user,id=eth0 -device virtio-net-device,netdev=eth0
-endif
ifeq ($(ADK_TARGET_FS),archive)
QEMU_ARGS+=-device virtio-blk-device,drive=vda -drive file=qemu-${ADK_TARGET_CPU_ARCH}.img,if=none,id=vda,format=raw
endif
@@ -54,6 +51,9 @@ endif
ifeq ($(ADK_TARGET_SYSTEM_SIPEED_MAIX_BIT),y)
@echo 'sudo python3 scripts/kflash.py -p /dev/ttyUSB0 -b 1500000 -t $(FW_DIR)/$(TARGET_KERNEL)'
endif
+ifeq ($(ADK_TARGET_SYSTEM_SIPEED_MAIXDUINO),y)
+ @echo 'sudo python3 scripts/kflash.py -p /dev/ttyUSB0 -b 1500000 -t $(FW_DIR)/$(TARGET_KERNEL)'
+endif
endif
ifeq ($(ADK_TARGET_FS),genimage)
targethelp:
diff --git a/target/riscv64/kernel/qemu-riscv64 b/target/riscv64/kernel/qemu-riscv64
index ea30532ad..a72876956 100644
--- a/target/riscv64/kernel/qemu-riscv64
+++ b/target/riscv64/kernel/qemu-riscv64
@@ -1,6 +1,9 @@
CONFIG_RISCV=y
CONFIG_FPU=y
+CONFIG_ARCH_VIRT=y
CONFIG_SOC_VIRT=y
CONFIG_NONPORTABLE=y
+CONFIG_RISCV_M_MODE=y
+CONFIG_PAGE_OFFSET=0x80000000
CONFIG_CMDLINE_BOOL=y
CONFIG_COMPAT_32BIT_TIME=y
diff --git a/target/riscv64/kernel/sipeed-maixduino b/target/riscv64/kernel/sipeed-maixduino
new file mode 100644
index 000000000..713afd415
--- /dev/null
+++ b/target/riscv64/kernel/sipeed-maixduino
@@ -0,0 +1,9 @@
+CONFIG_RISCV=y
+CONFIG_SOC_CANAAN=y
+CONFIG_SOC_CANAAN_K210_DTB_BUILTIN=y
+CONFIG_SOC_CANAAN_K210_DTB_SOURCE="sipeed_maixduino"
+CONFIG_SMP=y
+CONFIG_NR_CPUS=2
+CONFIG_CMDLINE="earlycon console=ttySIF0"
+CONFIG_CMDLINE_FORCE=y
+CONFIG_SECTION_MISMATCH_WARN_ONLY=y
diff --git a/target/riscv64/kernel/starfive-visionfive2 b/target/riscv64/kernel/starfive-visionfive2
index 8bc705d87..94fb37e55 100644
--- a/target/riscv64/kernel/starfive-visionfive2
+++ b/target/riscv64/kernel/starfive-visionfive2
@@ -1,50 +1,14 @@
CONFIG_RISCV=y
+CONFIG_ARCH_RV64I=y
CONFIG_SOC_STARFIVE=y
CONFIG_ARCH_STARFIVE=y
CONFIG_FPU=y
-CONFIG_RISCV_USE_LINKER_RELAXATION=y
CONFIG_RISCV_SBI=y
-CONFIG_ARCH_FLATMEM_ENABLE=y
-CONFIG_ARCH_SPARSEMEM_ENABLE=y
-CONFIG_ARCH_SELECT_MEMORY_MODEL=y
-CONFIG_ARCH_SUPPORTS_UPROBES=y
-CONFIG_STACKTRACE_SUPPORT=y
-CONFIG_GENERIC_BUG=y
-CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_GENERIC_CSUM=y
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_FIX_EARLYCON_MEM=y
-CONFIG_LOCKDEP_SUPPORT=y
-CONFIG_RISCV_DMA_NONCOHERENT=y
-CONFIG_AS_HAS_INSN=y
-CONFIG_AS_HAS_OPTION_ARCH=y
-CONFIG_ARCH_STARFIVE=y
-CONFIG_SOC_STARFIVE=y
CONFIG_ERRATA_SIFIVE=y
CONFIG_ERRATA_SIFIVE_CIP_453=y
CONFIG_ERRATA_SIFIVE_CIP_1200=y
CONFIG_NONPORTABLE=y
-CONFIG_ARCH_RV64I=y
-CONFIG_CMODEL_MEDANY=y
-CONFIG_MODULE_SECTIONS=y
-CONFIG_SMP=y
-CONFIG_HOTPLUG_CPU=y
-CONFIG_TUNE_GENERIC=y
-CONFIG_RISCV_ALTERNATIVE=y
-CONFIG_RISCV_ISA_C=y
-CONFIG_RISCV_ISA_SVNAPOT=y
-CONFIG_TOOLCHAIN_HAS_V=y
-CONFIG_RISCV_ISA_V=y
-CONFIG_RISCV_ISA_V_DEFAULT_ENABLE=y
-CONFIG_TOOLCHAIN_HAS_ZBB=y
-CONFIG_RISCV_ISA_ZBB=y
-CONFIG_RISCV_ISA_ZICBOM=y
-CONFIG_RISCV_ISA_ZICBOZ=y
-CONFIG_TOOLCHAIN_HAS_ZIHINTPAUSE=y
-CONFIG_TOOLCHAIN_NEEDS_EXPLICIT_ZICSR_ZIFENCEI=y
-CONFIG_FPU=y
CONFIG_IRQ_STACKS=y
CONFIG_RISCV_MISALIGNED=y
CONFIG_HZ_250=y
diff --git a/target/riscv64/systems/sipeed-maixduino b/target/riscv64/systems/sipeed-maixduino
new file mode 100644
index 000000000..e3261d66a
--- /dev/null
+++ b/target/riscv64/systems/sipeed-maixduino
@@ -0,0 +1,7 @@
+config ADK_TARGET_SYSTEM_SIPEED_MAIXDUINO
+ bool "Sipeed MAiXDUiNO"
+ select ADK_TARGET_CPU_RISCV64
+ select ADK_TARGET_WITH_SERIAL
+ select ADK_TARGET_KERNEL_IMAGE
+ help
+ Sipeed MAiXDUiNO support.
diff --git a/target/riscv64/uclibc-ng.config b/target/riscv64/uclibc-ng.config
index a0f4ee9fc..bcc79d8a4 100644
--- a/target/riscv64/uclibc-ng.config
+++ b/target/riscv64/uclibc-ng.config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# uClibc-ng 1.0.46 C Library Configuration
+# uClibc-ng 1.0.55 C Library Configuration
#
# TARGET_aarch64 is not set
# TARGET_alpha is not set
@@ -35,7 +35,7 @@ TARGET_riscv64=y
# TARGET_x86_64 is not set
# TARGET_xtensa is not set
TARGET_LDSO_NAME="ld-uClibc"
-TARGET_ARCH_BITS=32
+TARGET_ARCH_BITS=64
#
# Target Architecture Features and Options
@@ -58,6 +58,7 @@ UCLIBC_HAS_FLOATS=y
UCLIBC_HAS_FPU=y
DO_C99_MATH=y
DO_XSI_MATH=y
+# UCLIBC_HAS_FENV is not set
UCLIBC_HAS_LONG_DOUBLE_MATH=y
KERNEL_HEADERS=""
HAVE_DOT_CONFIG=y
@@ -86,6 +87,7 @@ 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