From 8e62ecb60e35ea15451bb1051b8a0e12da7080b1 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Sat, 5 May 2018 20:08:29 +0200 Subject: riscv: try gcc8 + riscv-kernel --- target/config/Config.in.compiler | 10 ++++++++++ target/config/Config.in.qemuopts | 1 + target/linux/Config.in.kernelversion | 16 ++++++++++++++-- target/linux/config/Config.in.virtio | 5 +++++ target/riscv64/kernel/qemu-riscv64 | 2 ++ toolchain/gcc/Makefile.inc | 8 ++++++++ 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 -- cgit v1.2.3