aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorZoltan HERPAI <wigyori@uid0.hu>2018-12-16 10:45:53 +0100
committerZoltan HERPAI <wigyori@uid0.hu>2023-06-14 09:22:08 +0200
commit341e312ada4dda207a9f2c8402e73cc13b195983 (patch)
tree130d56e4e1773032cda3f7fe10c8d53342f37083 /include
parent848759c2362fc60fef8aa76f2adeb228af3cae65 (diff)
downloadupstream-341e312ada4dda207a9f2c8402e73cc13b195983.tar.gz
upstream-341e312ada4dda207a9f2c8402e73cc13b195983.tar.bz2
upstream-341e312ada4dda207a9f2c8402e73cc13b195983.zip
generic: groundwork for RISC-V
Add build infrastructure for RISC-V. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu> (cherry picked from commit 50c05f6cd721130701cbbc77a75d2e090259c4e5)
Diffstat (limited to 'include')
-rw-r--r--include/kernel.mk2
-rw-r--r--include/site/riscv6430
-rw-r--r--include/target.mk4
3 files changed, 36 insertions, 0 deletions
diff --git a/include/kernel.mk b/include/kernel.mk
index c657bf5d82..b1ae42534d 100644
--- a/include/kernel.mk
+++ b/include/kernel.mk
@@ -90,6 +90,8 @@ else ifneq (,$(findstring $(ARCH) , mipsel mips64 mips64el ))
LINUX_KARCH := mips
else ifneq (,$(findstring $(ARCH) , powerpc64 ))
LINUX_KARCH := powerpc
+else ifneq (,$(findstring $(ARCH) , riscv64 ))
+ LINUX_KARCH := riscv
else ifneq (,$(findstring $(ARCH) , sh2 sh3 sh4 ))
LINUX_KARCH := sh
else ifneq (,$(findstring $(ARCH) , i386 x86_64 ))
diff --git a/include/site/riscv64 b/include/site/riscv64
new file mode 100644
index 0000000000..c5aa9c5543
--- /dev/null
+++ b/include/site/riscv64
@@ -0,0 +1,30 @@
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
+
+ac_cv_sizeof___int64=8
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=8
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=8
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=8
+ac_cv_sizeof_ssize_t=8
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=8
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=8
diff --git a/include/target.mk b/include/target.mk
index 992f955344..b5e3e7ff6f 100644
--- a/include/target.mk
+++ b/include/target.mk
@@ -260,6 +260,10 @@ ifeq ($(DUMP),1)
CPU_CFLAGS_arc700 = -mcpu=arc700
CPU_CFLAGS_archs = -mcpu=archs
endif
+ ifeq ($(ARCH),riscv64)
+ CPU_TYPE ?= riscv64
+ CPU_CFLAGS_riscv64:=-mabi=lp64d -march=rv64imafdc
+ endif
ifneq ($(CPU_TYPE),)
ifndef CPU_CFLAGS_$(CPU_TYPE)
$(warning CPU_TYPE "$(CPU_TYPE)" doesn't correspond to a known type)