summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2018-05-05 20:08:29 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2018-05-06 12:45:15 +0200
commit8e62ecb60e35ea15451bb1051b8a0e12da7080b1 (patch)
tree73ec77b83c6e1b4bc8137518555fb4d2f66d625a
parente32d2d5bf1bb8de93e8638fad75283710fb0f15a (diff)
riscv: try gcc8 + riscv-kernel
-rw-r--r--target/config/Config.in.compiler10
-rw-r--r--target/config/Config.in.qemuopts1
-rw-r--r--target/linux/Config.in.kernelversion16
-rw-r--r--target/linux/config/Config.in.virtio5
-rw-r--r--target/riscv64/kernel/qemu-riscv642
-rw-r--r--toolchain/gcc/Makefile.inc8
6 files changed, 40 insertions, 2 deletions
diff --git a/target/config/Config.in.compiler b/target/config/Config.in.compiler
index 720700fb0..aa692157c 100644
--- a/target/config/Config.in.compiler
+++ b/target/config/Config.in.compiler
@@ -47,6 +47,16 @@ config ADK_TOOLCHAIN_GCC_GIT
depends on !ADK_TARGET_ARCH_OR1K
depends on !ADK_TARGET_CPU_SH_J2
+config ADK_TOOLCHAIN_GCC_8
+ bool "8.1.0"
+ depends on !ADK_TARGET_ARCH_ARC
+ depends on !ADK_TARGET_ARCH_AVR32
+ depends on !ADK_TARGET_ARCH_CSKY
+ depends on !ADK_TARGET_ARCH_METAG
+ depends on !ADK_TARGET_ARCH_NDS32
+ depends on !ADK_TARGET_ARCH_OR1K
+ depends on !ADK_TARGET_CPU_SH_J2
+
config ADK_TOOLCHAIN_GCC_7
bool "7.3.0"
depends on !ADK_TARGET_ARCH_ARC
diff --git a/target/config/Config.in.qemuopts b/target/config/Config.in.qemuopts
index 0e82835b9..012e93efe 100644
--- a/target/config/Config.in.qemuopts
+++ b/target/config/Config.in.qemuopts
@@ -151,6 +151,7 @@ config ADK_TARGET_QEMU_WITHOUT_VIRTIO
config ADK_TARGET_QEMU_WITH_VIRTIO
bool "enabled"
select ADK_LINUX_KERNEL_VIRTIO
+ select ADK_LINUX_KERNEL_VIRTIO_MENU
select ADK_LINUX_KERNEL_VIRTIO_PCI
select ADK_LINUX_KERNEL_VIRTIO_NET
select ADK_LINUX_KERNEL_VIRTIO_BLK
diff --git a/target/linux/Config.in.kernelversion b/target/linux/Config.in.kernelversion
index 989ec0ea1..4f2fcfef6 100644
--- a/target/linux/Config.in.kernelversion
+++ b/target/linux/Config.in.kernelversion
@@ -12,11 +12,11 @@ default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_SYSTEM_ADSP_BF537
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_SYSTEM_PHYTEC_WEGA
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_ARCH_CSKY
default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_ARCH_LM32
+default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_ARCH_RISCV32
+default ADK_TARGET_LINUX_KERNEL_VERSION_GIT if ADK_TARGET_ARCH_RISCV64
default ADK_TARGET_LINUX_KERNEL_VERSION_4_4 if ADK_TARGET_ARCH_CRIS
default ADK_TARGET_LINUX_KERNEL_VERSION_4_4 if ADK_TARGET_ARCH_H8300
default ADK_TARGET_LINUX_KERNEL_VERSION_4_4 if ADK_TARGET_ARCH_METAG
-default ADK_TARGET_LINUX_KERNEL_VERSION_4_16 if ADK_TARGET_ARCH_RISCV32
-default ADK_TARGET_LINUX_KERNEL_VERSION_4_16 if ADK_TARGET_ARCH_RISCV64
default ADK_TARGET_LINUX_KERNEL_VERSION_4_14
config ADK_TARGET_LINUX_KERNEL_VERSION_GIT
@@ -36,6 +36,8 @@ config ADK_TARGET_LINUX_KERNEL_VERSION_4_16
depends on !ADK_TARGET_ARCH_CSKY
depends on !ADK_TARGET_ARCH_METAG
depends on !ADK_TARGET_ARCH_NDS32
+ depends on !ADK_TARGET_ARCH_RISCV32
+ depends on !ADK_TARGET_ARCH_RISCV64
config ADK_TARGET_LINUX_KERNEL_VERSION_4_14
bool "4.14.39"
@@ -181,6 +183,8 @@ config ADK_TARGET_LINUX_KERNEL_GIT_REPO
default "https://git.phytec.de/git/linux-ti.git" if ADK_TARGET_SYSTEM_PHYTEC_WEGA
default "https://github.com/m-labs/linux-milkymist.git" if ADK_TARGET_ARCH_LM32
default "https://github.com/c-sky/linux-4.9.y.git" if ADK_TARGET_ARCH_CSKY
+ default "https://github.com/riscv/riscv-linux.git" if ADK_TARGET_ARCH_RISCV32
+ default "https://github.com/riscv/riscv-linux.git" if ADK_TARGET_ARCH_RISCV64
default "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git"
help
GIT repository to use.
@@ -190,6 +194,8 @@ config ADK_TARGET_LINUX_KERNEL_GIT_REPO_NAME
depends on ADK_TARGET_LINUX_KERNEL_VERSION_GIT
default "csky" if ADK_TARGET_ARCH_CSKY
default "lm32" if ADK_TARGET_ARCH_LM32
+ default "riscv" if ADK_TARGET_ARCH_RISCV32
+ default "riscv" if ADK_TARGET_ARCH_RISCV64
default "rpi" if ADK_TARGET_BOARD_BCM28XX
default "ad" if ADK_TARGET_SYSTEM_ADSP_BF537
default "bb" if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
@@ -210,12 +216,16 @@ config ADK_TARGET_LINUX_KERNEL_GIT
default "902739f3353150ac9eb69ad995098f3079d862a3" if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
default "c85fbc86c61a8c8fd45ab1fe3d1bdd2df12f7962" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
default "8624998967676862843aed1f8ee2141e98987f81" if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
+ default "riscv-linux-4.15" if ADK_TARGET_ARCH_RISCV32
+ default "riscv-linux-4.15" if ADK_TARGET_ARCH_RISCV64
default "v4.4.52-phy" if ADK_TARGET_SYSTEM_PHYTEC_WEGA
config ADK_TARGET_LINUX_KERNEL_GIT_VER
string "kernel version"
depends on ADK_TARGET_LINUX_KERNEL_VERSION_GIT
default "4.9.56" if ADK_TARGET_ARCH_CSKY
+ default "4.15.0" if ADK_TARGET_ARCH_RISCV32
+ default "4.15.0" if ADK_TARGET_ARCH_RISCV64
default "4.14.37" if ADK_TARGET_BOARD_BCM28XX
default "4.4.37" if ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
default "4.4.52" if ADK_TARGET_SYSTEM_PHYTEC_WEGA
@@ -225,6 +235,8 @@ config ADK_TARGET_LINUX_KERNEL_GIT_VER
config ADK_TARGET_LINUX_KERNEL_GIT_TYPE
string
depends on ADK_TARGET_LINUX_KERNEL_VERSION_GIT
+ default "branch" if ADK_TARGET_ARCH_RISCV32
+ default "branch" if ADK_TARGET_ARCH_RISCV64
default "branch" if ADK_TARGET_SYSTEM_PHYTEC_WEGA
default "hash"
diff --git a/target/linux/config/Config.in.virtio b/target/linux/config/Config.in.virtio
index cd1d914ee..526e2920e 100644
--- a/target/linux/config/Config.in.virtio
+++ b/target/linux/config/Config.in.virtio
@@ -4,6 +4,9 @@
menu "Virtio driver support"
depends on ADK_TARGET_WITH_VIRTIO || ADK_TARGET_QEMU
+config ADK_LINUX_KERNEL_VIRTIO_MENU
+ bool
+
config ADK_LINUX_KERNEL_VIRTIO
bool
@@ -22,6 +25,7 @@ config ADK_LINUX_KERNEL_VIRTIO_MMIO
config ADK_LINUX_KERNEL_VIRTIO_NET
tristate "Virtio net driver"
select ADK_LINUX_KERNEL_VIRTIO
+ select ADK_LINUX_KERNEL_VIRTIO_MENU
select ADK_LINUX_KERNEL_VIRTIO_MMIO
select ADK_LINUX_KERNEL_VIRTIO_PCI
select ADK_LINUX_KERNEL_VIRTIO_PCI_LEGACY
@@ -33,6 +37,7 @@ config ADK_LINUX_KERNEL_VIRTIO_NET
config ADK_LINUX_KERNEL_VIRTIO_BLK
tristate "Virtio block driver"
select ADK_LINUX_KERNEL_VIRTIO
+ select ADK_LINUX_KERNEL_VIRTIO_MENU
select ADK_LINUX_KERNEL_VIRTIO_PCI
select ADK_LINUX_KERNEL_VIRTIO_PCI_LEGACY
select ADK_LINUX_KERNEL_VIRTIO_MMIO
diff --git a/target/riscv64/kernel/qemu-riscv64 b/target/riscv64/kernel/qemu-riscv64
index 5246f62aa..0b18267b0 100644
--- a/target/riscv64/kernel/qemu-riscv64
+++ b/target/riscv64/kernel/qemu-riscv64
@@ -1,3 +1,5 @@
CONFIG_RISCV=y
+CONFIG_RISCV_PLIC=y
+CONFIG_HVC_RISCV_SBI=y
CONFIG_CMDLINE_BOOL=y
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
diff --git a/toolchain/gcc/Makefile.inc b/toolchain/gcc/Makefile.inc
index 114d9c2dc..e9c48aa9c 100644
--- a/toolchain/gcc/Makefile.inc
+++ b/toolchain/gcc/Makefile.inc
@@ -2,6 +2,14 @@
# material, please see the LICENCE file in the top-level directory.
PKG_NAME:= gcc
+ifeq ($(ADK_TOOLCHAIN_GCC_8),y)
+PKG_VERSION:= 8.1.0
+PKG_HASH:= 1d1866f992626e61349a1ccd0b8d5253816222cdc13390dcfaa74b093aa2b153
+PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
+PKG_RELEASE:= 1
+DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.xz
+LIBSTDCXXVER:= 24
+endif
ifeq ($(ADK_TOOLCHAIN_GCC_7),y)
PKG_VERSION:= 7.3.0
PKG_HASH:= 832ca6ae04636adbb430e865a1451adf6979ab44ca1c8374f61fba65645ce15c