From 0c96f7329fd5ec6b775bd6df6717a3bb87203874 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Thu, 22 Apr 2021 17:14:50 +0200 Subject: various fixes for embedded-test run --- package/busybox/config/shell/Config.in | 2 +- package/busybox/config/util-linux/Config.in | 6 +- target/config/Config.in.compiler | 3 +- target/linux/Config.in.kernelversion | 2 +- target/linux/patches/5.4.99/mipsr6.patch | 113 ++++++++++++++++++++++++ toolchain/gcc/patches/10.3.0/add-crtreloc.frv | 12 +++ toolchain/gcc/patches/10.3.0/nios2-softfp.patch | 14 +++ 7 files changed, 145 insertions(+), 7 deletions(-) create mode 100644 target/linux/patches/5.4.99/mipsr6.patch create mode 100644 toolchain/gcc/patches/10.3.0/add-crtreloc.frv create mode 100644 toolchain/gcc/patches/10.3.0/nios2-softfp.patch diff --git a/package/busybox/config/shell/Config.in b/package/busybox/config/shell/Config.in index bc96b0267..0ce917dc3 100644 --- a/package/busybox/config/shell/Config.in +++ b/package/busybox/config/shell/Config.in @@ -88,7 +88,7 @@ config BUSYBOX_SHELL_ASH config BUSYBOX_ASH bool "ash (78 kb)" - default y + default n depends on !BUSYBOX_NOMMU select BUSYBOX_SHELL_ASH help diff --git a/package/busybox/config/util-linux/Config.in b/package/busybox/config/util-linux/Config.in index bce5fafe1..77b2b83f1 100644 --- a/package/busybox/config/util-linux/Config.in +++ b/package/busybox/config/util-linux/Config.in @@ -517,7 +517,7 @@ config BUSYBOX_MKFS_VFAT Alias to "mkdosfs". config BUSYBOX_MKSWAP bool "mkswap (6.3 kb)" - default y + default n help The mkswap utility is used to configure a file or disk partition as Linux swap space. This allows Linux to use the entire file or @@ -781,7 +781,7 @@ config BUSYBOX_SETSID setsid runs a program in a new session config BUSYBOX_SWAPON bool "swapon (15 kb)" - default y + default n help Once you have created some swap space using 'mkswap', you also need to enable your swap space with the 'swapon' utility. The 'swapoff' @@ -807,7 +807,7 @@ config BUSYBOX_FEATURE_SWAPON_PRI config BUSYBOX_SWAPOFF bool "swapoff (14 kb)" - default y + default n config BUSYBOX_FEATURE_SWAPONOFF_LABEL bool "Support specifying devices by label or UUID" diff --git a/target/config/Config.in.compiler b/target/config/Config.in.compiler index 53a4e46f4..451151cb5 100644 --- a/target/config/Config.in.compiler +++ b/target/config/Config.in.compiler @@ -20,8 +20,7 @@ default ADK_TOOLCHAIN_GCC_METAG if ADK_TARGET_ARCH_METAG default ADK_TOOLCHAIN_GCC_NDS32 if ADK_TARGET_ARCH_NDS32 default ADK_TOOLCHAIN_GCC_7 if ADK_TARGET_CPU_ARM_ARM11MPCORE default ADK_TOOLCHAIN_GCC_7 if ADK_TARGET_CPU_ARM_CORTEX_A53 -default ADK_TOOLCHAIN_GCC_7 if ADK_TARGET_ARCH_M68K -default ADK_TOOLCHAIN_GCC_7 if ADK_TARGET_ARCH_SPARC +default ADK_TOOLCHAIN_GCC_9 if ADK_TARGET_ARCH_MICROBLAZE default ADK_TOOLCHAIN_GCC_10 config ADK_TOOLCHAIN_GCC_GIT diff --git a/target/linux/Config.in.kernelversion b/target/linux/Config.in.kernelversion index 8841be318..992666748 100644 --- a/target/linux/Config.in.kernelversion +++ b/target/linux/Config.in.kernelversion @@ -24,7 +24,7 @@ default ADK_TARGET_LINUX_KERNEL_VERSION_4_9 if ADK_TARGET_SYSTEM_ST_STM32F429 default ADK_TARGET_LINUX_KERNEL_VERSION_4_9 if ADK_TARGET_SYSTEM_ST_STM32F769 default ADK_TARGET_LINUX_KERNEL_VERSION_4_14 if ADK_TARGET_SYSTEM_QEMU_ARM_VERSATILEPB default ADK_TARGET_LINUX_KERNEL_VERSION_4_19 if ADK_TARGET_ARCH_ARC -default ADK_TARGET_LINUX_KERNEL_VERSION_5_10 +default ADK_TARGET_LINUX_KERNEL_VERSION_5_4 config ADK_TARGET_LINUX_KERNEL_VERSION_GIT bool "git" diff --git a/target/linux/patches/5.4.99/mipsr6.patch b/target/linux/patches/5.4.99/mipsr6.patch new file mode 100644 index 000000000..b8574797e --- /dev/null +++ b/target/linux/patches/5.4.99/mipsr6.patch @@ -0,0 +1,113 @@ +diff -Nur linux-5.10.17.orig/arch/mips/include/asm/vdso/gettimeofday.h linux-5.10.17/arch/mips/include/asm/vdso/gettimeofday.h +--- linux-5.10.17.orig/arch/mips/include/asm/vdso/gettimeofday.h 2021-02-17 11:02:30.000000000 +0100 ++++ linux-5.10.17/arch/mips/include/asm/vdso/gettimeofday.h 2021-04-09 15:24:43.613709753 +0200 +@@ -30,12 +30,21 @@ + register long nr asm("v0") = __NR_gettimeofday; + register long error asm("a3"); + ++#if MIPS_ISA_REV >= 6 ++ asm volatile( ++ " syscall\n" ++ : "=r" (ret), "=r" (error) ++ : "r" (tv), "r" (tz), "r" (nr) ++ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", ++ "$14", "$15", "$24", "$25", "memory"); ++#else + asm volatile( + " syscall\n" + : "=r" (ret), "=r" (error) + : "r" (tv), "r" (tz), "r" (nr) + : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", + "$14", "$15", "$24", "$25", "hi", "lo", "memory"); ++#endif + + return error ? -ret : ret; + } +@@ -54,12 +63,21 @@ + #endif + register long error asm("a3"); + ++#if MIPS_ISA_REV >= 6 ++ asm volatile( ++ " syscall\n" ++ : "=r" (ret), "=r" (error) ++ : "r" (clkid), "r" (ts), "r" (nr) ++ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", ++ "$14", "$15", "$24", "$25", "memory"); ++#else + asm volatile( + " syscall\n" + : "=r" (ret), "=r" (error) + : "r" (clkid), "r" (ts), "r" (nr) + : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", + "$14", "$15", "$24", "$25", "hi", "lo", "memory"); ++#endif + + return error ? -ret : ret; + } +@@ -78,12 +96,21 @@ + #endif + register long error asm("a3"); + ++#if MIPS_ISA_REV >= 6 ++ asm volatile( ++ " syscall\n" ++ : "=r" (ret), "=r" (error) ++ : "r" (clkid), "r" (ts), "r" (nr) ++ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", ++ "$14", "$15", "$24", "$25", "memory"); ++#else + asm volatile( + " syscall\n" + : "=r" (ret), "=r" (error) + : "r" (clkid), "r" (ts), "r" (nr) + : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", + "$14", "$15", "$24", "$25", "hi", "lo", "memory"); ++#endif + + return error ? -ret : ret; + } +@@ -100,12 +127,21 @@ + register long nr asm("v0") = __NR_clock_gettime; + register long error asm("a3"); + ++#if MIPS_ISA_REV >= 6 ++ asm volatile( ++ " syscall\n" ++ : "=r" (ret), "=r" (error) ++ : "r" (clkid), "r" (ts), "r" (nr) ++ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", ++ "$14", "$15", "$24", "$25", "memory"); ++#else + asm volatile( + " syscall\n" + : "=r" (ret), "=r" (error) + : "r" (clkid), "r" (ts), "r" (nr) + : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", + "$14", "$15", "$24", "$25", "hi", "lo", "memory"); ++#endif + + return error ? -ret : ret; + } +@@ -120,12 +156,21 @@ + register long nr asm("v0") = __NR_clock_getres; + register long error asm("a3"); + ++#if MIPS_ISA_REV >= 6 ++ asm volatile( ++ " syscall\n" ++ : "=r" (ret), "=r" (error) ++ : "r" (clkid), "r" (ts), "r" (nr) ++ : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", ++ "$14", "$15", "$24", "$25", "memory"); ++#else + asm volatile( + " syscall\n" + : "=r" (ret), "=r" (error) + : "r" (clkid), "r" (ts), "r" (nr) + : "$1", "$3", "$8", "$9", "$10", "$11", "$12", "$13", + "$14", "$15", "$24", "$25", "hi", "lo", "memory"); ++#endif + + return error ? -ret : ret; + } diff --git a/toolchain/gcc/patches/10.3.0/add-crtreloc.frv b/toolchain/gcc/patches/10.3.0/add-crtreloc.frv new file mode 100644 index 000000000..30de24cdc --- /dev/null +++ b/toolchain/gcc/patches/10.3.0/add-crtreloc.frv @@ -0,0 +1,12 @@ +diff -Nur gcc-8.3.0.orig/gcc/config/frv/linux.h gcc-8.3.0/gcc/config/frv/linux.h +--- gcc-8.3.0.orig/gcc/config/frv/linux.h 2018-01-03 11:03:58.000000000 +0100 ++++ gcc-8.3.0/gcc/config/frv/linux.h 2019-10-08 10:52:00.176295821 +0200 +@@ -27,7 +27,7 @@ + + #undef STARTFILE_SPEC + #define STARTFILE_SPEC \ +- "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} \ ++ "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} crtreloc.o%s \ + crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}" + + #undef ENDFILE_SPEC diff --git a/toolchain/gcc/patches/10.3.0/nios2-softfp.patch b/toolchain/gcc/patches/10.3.0/nios2-softfp.patch new file mode 100644 index 000000000..c677c6c2f --- /dev/null +++ b/toolchain/gcc/patches/10.3.0/nios2-softfp.patch @@ -0,0 +1,14 @@ +diff -Nur gcc-6.2.0.orig/libgcc/config.host gcc-6.2.0/libgcc/config.host +--- gcc-6.2.0.orig/libgcc/config.host 2016-05-17 08:15:52.000000000 +0200 ++++ gcc-6.2.0/libgcc/config.host 2016-10-15 14:42:53.971919904 +0200 +@@ -962,6 +962,10 @@ + ;; + esac + ;; ++nios2-*-linux-uclibc*) ++ tmake_file="$tmake_file nios2/t-nios2 nios2/t-linux t-libgcc-pic t-slibgcc-libgcc t-softfp-sfdf t-softfp" ++ md_unwind_header=nios2/linux-unwind.h ++ ;; + nios2-*-linux*) + tmake_file="$tmake_file nios2/t-nios2 nios2/t-linux t-libgcc-pic t-slibgcc-libgcc" + md_unwind_header=nios2/linux-unwind.h -- cgit v1.2.3