mirror of
https://github.com/openwrt/openwrt.git
synced 2026-06-17 12:40:16 +04:00
treewide: remove unused archs leftovers
These are all unused by the current targets, clean up and stop irritating the user with irrelevant grep results. Signed-off-by: Andre Heider <a.heider@gmail.com> Link: https://github.com/openwrt/openwrt/pull/23240 Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
committed by
Robert Marko
parent
6018bd5b11
commit
e3271a6786
@@ -185,7 +185,7 @@ menu "Global build settings"
|
|||||||
Packages can choose to opt-out via setting PKG_BUILD_FLAGS:=no-lto
|
Packages can choose to opt-out via setting PKG_BUILD_FLAGS:=no-lto
|
||||||
|
|
||||||
config MOLD
|
config MOLD
|
||||||
depends on (aarch64 || arm || i386 || i686 || loongarch64 || m68k || powerpc || powerpc64 || riscv64 || sh4 || x86_64)
|
depends on (aarch64 || arm || i386 || i686 || loongarch64 || powerpc || powerpc64 || riscv64 || x86_64)
|
||||||
depends on !HOST_OS_MACOS
|
depends on !HOST_OS_MACOS
|
||||||
def_bool $(shell, ./config/check-hostcxx.sh 10 2 12)
|
def_bool $(shell, ./config/check-hostcxx.sh 10 2 12)
|
||||||
|
|
||||||
|
|||||||
@@ -207,7 +207,7 @@ menuconfig DEVEL
|
|||||||
|
|
||||||
config EXTRA_OPTIMIZATION
|
config EXTRA_OPTIMIZATION
|
||||||
string "Additional compiler options" if DEVEL
|
string "Additional compiler options" if DEVEL
|
||||||
default "-fno-caller-saves -fno-plt" if !CONFIG_EXTERNAL_TOOLCHAIN && !arc
|
default "-fno-caller-saves -fno-plt" if !CONFIG_EXTERNAL_TOOLCHAIN
|
||||||
default "-fno-caller-saves"
|
default "-fno-caller-saves"
|
||||||
help
|
help
|
||||||
Extra target-independent optimizations to use when building for the target.
|
Extra target-independent optimizations to use when building for the target.
|
||||||
|
|||||||
+1
-1
@@ -94,7 +94,7 @@ SQUASHFSOPT += -small-readers $(CONFIG_TARGET_SQUASHFS_SMALL_READERS)
|
|||||||
SQUASHFSCOMP := gzip
|
SQUASHFSCOMP := gzip
|
||||||
LZMA_XZ_OPTIONS := -Xpreset 9 -Xe -Xlc 0 -Xlp 2 -Xpb 2
|
LZMA_XZ_OPTIONS := -Xpreset 9 -Xe -Xlc 0 -Xlp 2 -Xpb 2
|
||||||
ifeq ($(CONFIG_SQUASHFS_XZ),y)
|
ifeq ($(CONFIG_SQUASHFS_XZ),y)
|
||||||
ifneq ($(filter arm x86 powerpc sparc,$(LINUX_KARCH)),)
|
ifneq ($(filter arm x86 powerpc,$(LINUX_KARCH)),)
|
||||||
BCJ_FILTER:=-Xbcj $(LINUX_KARCH)
|
BCJ_FILTER:=-Xbcj $(LINUX_KARCH)
|
||||||
endif
|
endif
|
||||||
SQUASHFSCOMP := xz $(LZMA_XZ_OPTIONS) $(BCJ_FILTER)
|
SQUASHFSCOMP := xz $(LZMA_XZ_OPTIONS) $(BCJ_FILTER)
|
||||||
|
|||||||
@@ -82,8 +82,6 @@ ifneq (,$(findstring uml,$(BOARD)))
|
|||||||
LINUX_KARCH=um
|
LINUX_KARCH=um
|
||||||
else ifneq (,$(findstring $(ARCH) , aarch64 aarch64_be ))
|
else ifneq (,$(findstring $(ARCH) , aarch64 aarch64_be ))
|
||||||
LINUX_KARCH := arm64
|
LINUX_KARCH := arm64
|
||||||
else ifneq (,$(findstring $(ARCH) , arceb ))
|
|
||||||
LINUX_KARCH := arc
|
|
||||||
else ifneq (,$(findstring $(ARCH) , armeb ))
|
else ifneq (,$(findstring $(ARCH) , armeb ))
|
||||||
LINUX_KARCH := arm
|
LINUX_KARCH := arm
|
||||||
else ifneq (,$(findstring $(ARCH) , loongarch64 ))
|
else ifneq (,$(findstring $(ARCH) , loongarch64 ))
|
||||||
@@ -94,8 +92,6 @@ else ifneq (,$(findstring $(ARCH) , powerpc64 ))
|
|||||||
LINUX_KARCH := powerpc
|
LINUX_KARCH := powerpc
|
||||||
else ifneq (,$(findstring $(ARCH) , riscv64 ))
|
else ifneq (,$(findstring $(ARCH) , riscv64 ))
|
||||||
LINUX_KARCH := riscv
|
LINUX_KARCH := riscv
|
||||||
else ifneq (,$(findstring $(ARCH) , sh2 sh3 sh4 ))
|
|
||||||
LINUX_KARCH := sh
|
|
||||||
else ifneq (,$(findstring $(ARCH) , i386 x86_64 ))
|
else ifneq (,$(findstring $(ARCH) , i386 x86_64 ))
|
||||||
LINUX_KARCH := x86
|
LINUX_KARCH := x86
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -252,21 +252,11 @@ ifeq ($(DUMP),1)
|
|||||||
CPU_CFLAGS_e5500:=-mcpu=e5500
|
CPU_CFLAGS_e5500:=-mcpu=e5500
|
||||||
CPU_CFLAGS_powerpc64:=-mcpu=powerpc64
|
CPU_CFLAGS_powerpc64:=-mcpu=powerpc64
|
||||||
endif
|
endif
|
||||||
ifeq ($(ARCH),sparc)
|
|
||||||
CPU_TYPE = sparc
|
|
||||||
CPU_CFLAGS_ultrasparc = -mcpu=ultrasparc
|
|
||||||
endif
|
|
||||||
ifeq ($(ARCH),aarch64)
|
ifeq ($(ARCH),aarch64)
|
||||||
CPU_TYPE ?= generic
|
CPU_TYPE ?= generic
|
||||||
CPU_CFLAGS_generic = -mcpu=generic
|
CPU_CFLAGS_generic = -mcpu=generic
|
||||||
CPU_CFLAGS_cortex-a53 = -mcpu=cortex-a53
|
CPU_CFLAGS_cortex-a53 = -mcpu=cortex-a53
|
||||||
endif
|
endif
|
||||||
ifeq ($(ARCH),arc)
|
|
||||||
CPU_TYPE ?= arc700
|
|
||||||
CPU_CFLAGS += -matomic
|
|
||||||
CPU_CFLAGS_arc700 = -mcpu=arc700
|
|
||||||
CPU_CFLAGS_archs = -mcpu=archs
|
|
||||||
endif
|
|
||||||
ifeq ($(ARCH),riscv64)
|
ifeq ($(ARCH),riscv64)
|
||||||
CPU_TYPE ?= generic
|
CPU_TYPE ?= generic
|
||||||
CPU_CFLAGS_generic:=-mabi=lp64d -march=rv64gc
|
CPU_CFLAGS_generic:=-mabi=lp64d -march=rv64gc
|
||||||
|
|||||||
@@ -38,7 +38,6 @@ config OPENSSL_WITH_ASM
|
|||||||
bool
|
bool
|
||||||
default y
|
default y
|
||||||
prompt "Compile with optimized assembly code"
|
prompt "Compile with optimized assembly code"
|
||||||
depends on !arc
|
|
||||||
help
|
help
|
||||||
Disabling this option will reduce code size and performance.
|
Disabling this option will reduce code size and performance.
|
||||||
The increase in performance and size depends on the target
|
The increase in performance and size depends on the target
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ $(call Package/openssl/Default)
|
|||||||
+OPENSSL_ENGINE_BUILTIN_AFALG:kmod-crypto-user \
|
+OPENSSL_ENGINE_BUILTIN_AFALG:kmod-crypto-user \
|
||||||
+OPENSSL_ENGINE_BUILTIN_DEVCRYPTO:kmod-cryptodev \
|
+OPENSSL_ENGINE_BUILTIN_DEVCRYPTO:kmod-cryptodev \
|
||||||
+OPENSSL_ENGINE_BUILTIN_PADLOCK:kmod-crypto-hw-padlock \
|
+OPENSSL_ENGINE_BUILTIN_PADLOCK:kmod-crypto-hw-padlock \
|
||||||
+(arm||armeb||mips||mipsel||powerpc||arc):libatomic
|
+(arm||armeb||mips||mipsel||powerpc):libatomic
|
||||||
TITLE+= (libraries)
|
TITLE+= (libraries)
|
||||||
ABI_VERSION:=$(firstword $(subst .,$(space),$(PKG_VERSION)))
|
ABI_VERSION:=$(firstword $(subst .,$(space),$(PKG_VERSION)))
|
||||||
MENU:=1
|
MENU:=1
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
|||||||
|
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/Configurations/25-openwrt.conf
|
+++ b/Configurations/25-openwrt.conf
|
||||||
@@ -0,0 +1,55 @@
|
@@ -0,0 +1,52 @@
|
||||||
+## Openwrt "CONFIG_ARCH" matching targets.
|
+## Openwrt "CONFIG_ARCH" matching targets.
|
||||||
+
|
+
|
||||||
+# The targets need to end in '-openwrt' for the AFALG patch to work
|
+# The targets need to end in '-openwrt' for the AFALG patch to work
|
||||||
@@ -18,9 +18,6 @@ Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
|||||||
+ "linux-aarch64-openwrt" => {
|
+ "linux-aarch64-openwrt" => {
|
||||||
+ inherit_from => [ "linux-aarch64" ],
|
+ inherit_from => [ "linux-aarch64" ],
|
||||||
+ },
|
+ },
|
||||||
+ "linux-arc-openwrt" => {
|
|
||||||
+ inherit_from => [ "linux-latomic" ],
|
|
||||||
+ },
|
|
||||||
+ "linux-arm-openwrt" => {
|
+ "linux-arm-openwrt" => {
|
||||||
+ inherit_from => [ "linux-armv4" ],
|
+ inherit_from => [ "linux-armv4" ],
|
||||||
+ },
|
+ },
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
config PCRE2_JIT_ENABLED
|
config PCRE2_JIT_ENABLED
|
||||||
bool
|
bool
|
||||||
depends on PACKAGE_libpcre2 && (aarch64 || aarch64_be || arm || i386 || i686 || x86_64 || mips || mipsel || mips64 || mips64el || powerpc || powerpc64 || powerpcle || sparc)
|
depends on PACKAGE_libpcre2 && (aarch64 || aarch64_be || arm || i386 || i686 || x86_64 || mips || mipsel || mips64 || mips64el || powerpc || powerpc64 || powerpcle)
|
||||||
default y if (aarch64 || arm || i686 || x86_64)
|
default y if (aarch64 || arm || i686 || x86_64)
|
||||||
prompt "Enable JIT compiler support"
|
prompt "Enable JIT compiler support"
|
||||||
help
|
help
|
||||||
|
|||||||
@@ -142,7 +142,7 @@ define Package/libasan
|
|||||||
$(call Package/gcc/Default)
|
$(call Package/gcc/Default)
|
||||||
NAME:=libasan
|
NAME:=libasan
|
||||||
TITLE:=Runtime library for AddressSanitizer in GCC
|
TITLE:=Runtime library for AddressSanitizer in GCC
|
||||||
DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips64 @!mips64el @!arc
|
DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips64 @!mips64el
|
||||||
ABI_VERSION:=5
|
ABI_VERSION:=5
|
||||||
endef
|
endef
|
||||||
|
|
||||||
@@ -171,7 +171,7 @@ define Package/libtsan
|
|||||||
$(call Package/gcc/Default)
|
$(call Package/gcc/Default)
|
||||||
NAME:=libtsan
|
NAME:=libtsan
|
||||||
TITLE:=Runtime library for ThreadSanitizer in GCC
|
TITLE:=Runtime library for ThreadSanitizer in GCC
|
||||||
DEPENDS:=@USE_GLIBC +librt +libstdcpp @!loongarch64 @!mips @!mipsel @!mips64 @!mips64el @!arc
|
DEPENDS:=@USE_GLIBC +librt +libstdcpp @!loongarch64 @!mips @!mipsel @!mips64 @!mips64el
|
||||||
ABI_VERSION:=0
|
ABI_VERSION:=0
|
||||||
endef
|
endef
|
||||||
|
|
||||||
@@ -200,7 +200,7 @@ define Package/liblsan
|
|||||||
$(call Package/gcc/Default)
|
$(call Package/gcc/Default)
|
||||||
NAME:=liblsan
|
NAME:=liblsan
|
||||||
TITLE:=Runtime library for LeakSanitizer in GCC
|
TITLE:=Runtime library for LeakSanitizer in GCC
|
||||||
DEPENDS:=@USE_GLIBC +librt +libstdcpp @!loongarch64 @!mips @!mipsel @!mips64 @!mips64el @!arc
|
DEPENDS:=@USE_GLIBC +librt +libstdcpp @!loongarch64 @!mips @!mipsel @!mips64 @!mips64el
|
||||||
ABI_VERSION:=0
|
ABI_VERSION:=0
|
||||||
endef
|
endef
|
||||||
|
|
||||||
@@ -229,7 +229,7 @@ define Package/libubsan
|
|||||||
$(call Package/gcc/Default)
|
$(call Package/gcc/Default)
|
||||||
NAME:=libubsan
|
NAME:=libubsan
|
||||||
TITLE:=Runtime library for UndefinedBehaviorSanitizer in GCC
|
TITLE:=Runtime library for UndefinedBehaviorSanitizer in GCC
|
||||||
DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips64 @!mips64el @!arc
|
DEPENDS:=@USE_GLIBC +librt +libstdcpp @!mips64 @!mips64el
|
||||||
ABI_VERSION:=1
|
ABI_VERSION:=1
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
|||||||
@@ -142,13 +142,6 @@ config aarch64_be
|
|||||||
select BIG_ENDIAN
|
select BIG_ENDIAN
|
||||||
bool
|
bool
|
||||||
|
|
||||||
config arc
|
|
||||||
bool
|
|
||||||
|
|
||||||
config arceb
|
|
||||||
select BIG_ENDIAN
|
|
||||||
bool
|
|
||||||
|
|
||||||
config arm
|
config arm
|
||||||
bool
|
bool
|
||||||
|
|
||||||
@@ -172,9 +165,6 @@ config loongarch64
|
|||||||
select ARCH_64BIT
|
select ARCH_64BIT
|
||||||
bool
|
bool
|
||||||
|
|
||||||
config m68k
|
|
||||||
bool
|
|
||||||
|
|
||||||
config mips
|
config mips
|
||||||
select BIG_ENDIAN
|
select BIG_ENDIAN
|
||||||
bool
|
bool
|
||||||
@@ -204,24 +194,6 @@ config riscv64
|
|||||||
select ARCH_64BIT
|
select ARCH_64BIT
|
||||||
bool
|
bool
|
||||||
|
|
||||||
config sh3
|
|
||||||
bool
|
|
||||||
|
|
||||||
config sh3eb
|
|
||||||
select BIG_ENDIAN
|
|
||||||
bool
|
|
||||||
|
|
||||||
config sh4
|
|
||||||
bool
|
|
||||||
|
|
||||||
config sh4eb
|
|
||||||
select BIG_ENDIAN
|
|
||||||
bool
|
|
||||||
|
|
||||||
config sparc
|
|
||||||
select BIG_ENDIAN
|
|
||||||
bool
|
|
||||||
|
|
||||||
config x86_64
|
config x86_64
|
||||||
select ARCH_64BIT
|
select ARCH_64BIT
|
||||||
bool
|
bool
|
||||||
@@ -230,14 +202,11 @@ config ARCH
|
|||||||
string
|
string
|
||||||
default "aarch64" if aarch64
|
default "aarch64" if aarch64
|
||||||
default "aarch64_be" if aarch64_be
|
default "aarch64_be" if aarch64_be
|
||||||
default "arc" if arc
|
|
||||||
default "arceb" if arceb
|
|
||||||
default "arm" if arm
|
default "arm" if arm
|
||||||
default "armeb" if armeb
|
default "armeb" if armeb
|
||||||
default "i386" if i386
|
default "i386" if i386
|
||||||
default "i686" if i686
|
default "i686" if i686
|
||||||
default "loongarch64" if loongarch64
|
default "loongarch64" if loongarch64
|
||||||
default "m68k" if m68k
|
|
||||||
default "mips" if mips
|
default "mips" if mips
|
||||||
default "mipsel" if mipsel
|
default "mipsel" if mipsel
|
||||||
default "mips64" if mips64
|
default "mips64" if mips64
|
||||||
@@ -245,10 +214,5 @@ config ARCH
|
|||||||
default "powerpc" if powerpc
|
default "powerpc" if powerpc
|
||||||
default "powerpc64" if powerpc64
|
default "powerpc64" if powerpc64
|
||||||
default "riscv64" if riscv64
|
default "riscv64" if riscv64
|
||||||
default "sh3" if sh3
|
|
||||||
default "sh3eb" if sh3eb
|
|
||||||
default "sh4" if sh4
|
|
||||||
default "sh4eb" if sh4eb
|
|
||||||
default "sparc" if sparc
|
|
||||||
default "x86_64" if x86_64
|
default "x86_64" if x86_64
|
||||||
|
|
||||||
|
|||||||
@@ -1,84 +0,0 @@
|
|||||||
From bb0c3b0175240bf152fd7c644821a0cf9f77c37c Mon Sep 17 00:00:00 2001
|
|
||||||
From: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
|
|
||||||
Date: Fri, 15 Mar 2019 18:53:38 +0300
|
|
||||||
Subject: [PATCH] arc add OWRTDTB section
|
|
||||||
|
|
||||||
This change allows OpenWRT to patch resulting kernel binary with
|
|
||||||
external .dtb.
|
|
||||||
|
|
||||||
That allows us to re-use exactky the same vmlinux on different boards
|
|
||||||
given its ARC core configurations match (at least cache line sizes etc).
|
|
||||||
|
|
||||||
""patch-dtb" searches for ASCII "OWRTDTB:" strign and copies external
|
|
||||||
.dtb right after it, keeping the string in place.
|
|
||||||
|
|
||||||
Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
|
|
||||||
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
|
|
||||||
Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
|
|
||||||
---
|
|
||||||
arch/arc/kernel/head.S | 10 ++++++++++
|
|
||||||
arch/arc/kernel/setup.c | 4 +++-
|
|
||||||
arch/arc/kernel/vmlinux.lds.S | 13 +++++++++++++
|
|
||||||
3 files changed, 26 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
--- a/arch/arc/kernel/head.S
|
|
||||||
+++ b/arch/arc/kernel/head.S
|
|
||||||
@@ -88,6 +88,16 @@
|
|
||||||
DSP_EARLY_INIT
|
|
||||||
.endm
|
|
||||||
|
|
||||||
+ ; Here "patch-dtb" will embed external .dtb
|
|
||||||
+ ; Note "patch-dtb" searches for ASCII "OWRTDTB:" string
|
|
||||||
+ ; and pastes .dtb right after it, hense the string precedes
|
|
||||||
+ ; __image_dtb symbol.
|
|
||||||
+ .section .owrt, "aw",@progbits
|
|
||||||
+ .ascii "OWRTDTB:"
|
|
||||||
+ENTRY(__image_dtb)
|
|
||||||
+ .fill 0x4000
|
|
||||||
+END(__image_dtb)
|
|
||||||
+
|
|
||||||
.section .init.text, "ax",@progbits
|
|
||||||
|
|
||||||
;----------------------------------------------------------------
|
|
||||||
--- a/arch/arc/kernel/setup.c
|
|
||||||
+++ b/arch/arc/kernel/setup.c
|
|
||||||
@@ -450,6 +450,8 @@ static inline bool uboot_arg_invalid(uns
|
|
||||||
/* We always pass 0 as magic from U-boot */
|
|
||||||
#define UBOOT_MAGIC_VALUE 0
|
|
||||||
|
|
||||||
+extern struct boot_param_header __image_dtb;
|
|
||||||
+
|
|
||||||
void __init handle_uboot_args(void)
|
|
||||||
{
|
|
||||||
bool use_embedded_dtb = true;
|
|
||||||
@@ -488,7 +490,7 @@ void __init handle_uboot_args(void)
|
|
||||||
ignore_uboot_args:
|
|
||||||
|
|
||||||
if (use_embedded_dtb) {
|
|
||||||
- machine_desc = setup_machine_fdt(__dtb_start);
|
|
||||||
+ machine_desc = setup_machine_fdt(&__image_dtb);
|
|
||||||
if (!machine_desc)
|
|
||||||
panic("Embedded DT invalid\n");
|
|
||||||
}
|
|
||||||
--- a/arch/arc/kernel/vmlinux.lds.S
|
|
||||||
+++ b/arch/arc/kernel/vmlinux.lds.S
|
|
||||||
@@ -27,6 +27,19 @@ SECTIONS
|
|
||||||
|
|
||||||
. = CONFIG_LINUX_LINK_BASE;
|
|
||||||
|
|
||||||
+ /*
|
|
||||||
+ * In OpenWRT we want to patch built binary embedding .dtb of choice.
|
|
||||||
+ * This is implemented with "patch-dtb" utility which searches for
|
|
||||||
+ * "OWRTDTB:" string in first 16k of image and if it is found
|
|
||||||
+ * copies .dtb right after mentioned string.
|
|
||||||
+ *
|
|
||||||
+ * Note: "OWRTDTB:" won't be overwritten with .dtb, .dtb will follow it.
|
|
||||||
+ */
|
|
||||||
+ .owrt : {
|
|
||||||
+ *(.owrt)
|
|
||||||
+ . = ALIGN(PAGE_SIZE);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
_int_vec_base_lds = .;
|
|
||||||
.vector : {
|
|
||||||
*(.vector)
|
|
||||||
-24
@@ -1,24 +0,0 @@
|
|||||||
From: Alexey Brodkin <abrodkin@synopsys.com>
|
|
||||||
Subject: arc: enable unaligned access in kernel mode
|
|
||||||
|
|
||||||
This enables misaligned access handling even in kernel mode.
|
|
||||||
Some wireless drivers (ath9k-htc and mt7601u) use misaligned accesses
|
|
||||||
here and there and to cope with that without fixing stuff in the drivers
|
|
||||||
we're just gracefully handling it on ARC.
|
|
||||||
|
|
||||||
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
|
|
||||||
---
|
|
||||||
arch/arc/kernel/unaligned.c | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
--- a/arch/arc/kernel/unaligned.c
|
|
||||||
+++ b/arch/arc/kernel/unaligned.c
|
|
||||||
@@ -203,7 +203,7 @@ int misaligned_fixup(unsigned long addre
|
|
||||||
char buf[TASK_COMM_LEN];
|
|
||||||
|
|
||||||
/* handle user mode only and only if enabled by sysadmin */
|
|
||||||
- if (!user_mode(regs) || !unaligned_enabled)
|
|
||||||
+ if (!unaligned_enabled)
|
|
||||||
return 1;
|
|
||||||
|
|
||||||
if (no_unaligned_warning) {
|
|
||||||
@@ -1,84 +0,0 @@
|
|||||||
From bb0c3b0175240bf152fd7c644821a0cf9f77c37c Mon Sep 17 00:00:00 2001
|
|
||||||
From: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
|
|
||||||
Date: Fri, 15 Mar 2019 18:53:38 +0300
|
|
||||||
Subject: [PATCH] arc add OWRTDTB section
|
|
||||||
|
|
||||||
This change allows OpenWRT to patch resulting kernel binary with
|
|
||||||
external .dtb.
|
|
||||||
|
|
||||||
That allows us to re-use exactky the same vmlinux on different boards
|
|
||||||
given its ARC core configurations match (at least cache line sizes etc).
|
|
||||||
|
|
||||||
""patch-dtb" searches for ASCII "OWRTDTB:" strign and copies external
|
|
||||||
.dtb right after it, keeping the string in place.
|
|
||||||
|
|
||||||
Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
|
|
||||||
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
|
|
||||||
Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
|
|
||||||
---
|
|
||||||
arch/arc/kernel/head.S | 10 ++++++++++
|
|
||||||
arch/arc/kernel/setup.c | 4 +++-
|
|
||||||
arch/arc/kernel/vmlinux.lds.S | 13 +++++++++++++
|
|
||||||
3 files changed, 26 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
--- a/arch/arc/kernel/head.S
|
|
||||||
+++ b/arch/arc/kernel/head.S
|
|
||||||
@@ -88,6 +88,16 @@
|
|
||||||
DSP_EARLY_INIT
|
|
||||||
.endm
|
|
||||||
|
|
||||||
+ ; Here "patch-dtb" will embed external .dtb
|
|
||||||
+ ; Note "patch-dtb" searches for ASCII "OWRTDTB:" string
|
|
||||||
+ ; and pastes .dtb right after it, hense the string precedes
|
|
||||||
+ ; __image_dtb symbol.
|
|
||||||
+ .section .owrt, "aw",@progbits
|
|
||||||
+ .ascii "OWRTDTB:"
|
|
||||||
+ENTRY(__image_dtb)
|
|
||||||
+ .fill 0x4000
|
|
||||||
+END(__image_dtb)
|
|
||||||
+
|
|
||||||
.section .init.text, "ax",@progbits
|
|
||||||
|
|
||||||
;----------------------------------------------------------------
|
|
||||||
--- a/arch/arc/kernel/setup.c
|
|
||||||
+++ b/arch/arc/kernel/setup.c
|
|
||||||
@@ -450,6 +450,8 @@ static inline bool uboot_arg_invalid(uns
|
|
||||||
/* We always pass 0 as magic from U-boot */
|
|
||||||
#define UBOOT_MAGIC_VALUE 0
|
|
||||||
|
|
||||||
+extern struct boot_param_header __image_dtb;
|
|
||||||
+
|
|
||||||
void __init handle_uboot_args(void)
|
|
||||||
{
|
|
||||||
bool use_embedded_dtb = true;
|
|
||||||
@@ -488,7 +490,7 @@ void __init handle_uboot_args(void)
|
|
||||||
ignore_uboot_args:
|
|
||||||
|
|
||||||
if (use_embedded_dtb) {
|
|
||||||
- machine_desc = setup_machine_fdt(__dtb_start);
|
|
||||||
+ machine_desc = setup_machine_fdt(&__image_dtb);
|
|
||||||
if (!machine_desc)
|
|
||||||
panic("Embedded DT invalid\n");
|
|
||||||
}
|
|
||||||
--- a/arch/arc/kernel/vmlinux.lds.S
|
|
||||||
+++ b/arch/arc/kernel/vmlinux.lds.S
|
|
||||||
@@ -27,6 +27,19 @@ SECTIONS
|
|
||||||
|
|
||||||
. = CONFIG_LINUX_LINK_BASE;
|
|
||||||
|
|
||||||
+ /*
|
|
||||||
+ * In OpenWRT we want to patch built binary embedding .dtb of choice.
|
|
||||||
+ * This is implemented with "patch-dtb" utility which searches for
|
|
||||||
+ * "OWRTDTB:" string in first 16k of image and if it is found
|
|
||||||
+ * copies .dtb right after mentioned string.
|
|
||||||
+ *
|
|
||||||
+ * Note: "OWRTDTB:" won't be overwritten with .dtb, .dtb will follow it.
|
|
||||||
+ */
|
|
||||||
+ .owrt : {
|
|
||||||
+ *(.owrt)
|
|
||||||
+ . = ALIGN(PAGE_SIZE);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
_int_vec_base_lds = .;
|
|
||||||
.vector : {
|
|
||||||
*(.vector)
|
|
||||||
-24
@@ -1,24 +0,0 @@
|
|||||||
From: Alexey Brodkin <abrodkin@synopsys.com>
|
|
||||||
Subject: arc: enable unaligned access in kernel mode
|
|
||||||
|
|
||||||
This enables misaligned access handling even in kernel mode.
|
|
||||||
Some wireless drivers (ath9k-htc and mt7601u) use misaligned accesses
|
|
||||||
here and there and to cope with that without fixing stuff in the drivers
|
|
||||||
we're just gracefully handling it on ARC.
|
|
||||||
|
|
||||||
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
|
|
||||||
---
|
|
||||||
arch/arc/kernel/unaligned.c | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
--- a/arch/arc/kernel/unaligned.c
|
|
||||||
+++ b/arch/arc/kernel/unaligned.c
|
|
||||||
@@ -202,7 +202,7 @@ int misaligned_fixup(unsigned long addre
|
|
||||||
struct disasm_state state;
|
|
||||||
|
|
||||||
/* handle user mode only and only if enabled by sysadmin */
|
|
||||||
- if (!user_mode(regs) || !unaligned_enabled)
|
|
||||||
+ if (!unaligned_enabled)
|
|
||||||
return 1;
|
|
||||||
|
|
||||||
if (no_unaligned_warning) {
|
|
||||||
+1
-5
@@ -222,7 +222,6 @@ menuconfig TOOLCHAINOPTS
|
|||||||
menuconfig EXTRA_TARGET_ARCH
|
menuconfig EXTRA_TARGET_ARCH
|
||||||
bool
|
bool
|
||||||
prompt "Enable an extra toolchain target architecture" if TOOLCHAINOPTS
|
prompt "Enable an extra toolchain target architecture" if TOOLCHAINOPTS
|
||||||
depends on !sparc
|
|
||||||
help
|
help
|
||||||
Some builds may require a 'biarch' toolchain. This option
|
Some builds may require a 'biarch' toolchain. This option
|
||||||
allows you to specify an additional target arch.
|
allows you to specify an additional target arch.
|
||||||
@@ -298,7 +297,6 @@ comment "C Library"
|
|||||||
|
|
||||||
choice
|
choice
|
||||||
prompt "C Library implementation" if TOOLCHAINOPTS
|
prompt "C Library implementation" if TOOLCHAINOPTS
|
||||||
default LIBC_USE_GLIBC if arc
|
|
||||||
default LIBC_USE_MUSL
|
default LIBC_USE_MUSL
|
||||||
help
|
help
|
||||||
Select the C library implementation.
|
Select the C library implementation.
|
||||||
@@ -310,7 +308,6 @@ choice
|
|||||||
config LIBC_USE_MUSL
|
config LIBC_USE_MUSL
|
||||||
select USE_MUSL
|
select USE_MUSL
|
||||||
bool "Use musl"
|
bool "Use musl"
|
||||||
depends on !arc
|
|
||||||
|
|
||||||
endchoice
|
endchoice
|
||||||
|
|
||||||
@@ -356,11 +353,10 @@ config USE_LLVM_BUILD
|
|||||||
bool
|
bool
|
||||||
|
|
||||||
config USE_GLIBC
|
config USE_GLIBC
|
||||||
default y if !TOOLCHAINOPTS && !EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN && (arc)
|
|
||||||
bool
|
bool
|
||||||
|
|
||||||
config USE_MUSL
|
config USE_MUSL
|
||||||
default y if !TOOLCHAINOPTS && !EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN && !(arc)
|
default y if !TOOLCHAINOPTS && !EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
|
||||||
bool
|
bool
|
||||||
|
|
||||||
config SSP_SUPPORT
|
config SSP_SUPPORT
|
||||||
|
|||||||
@@ -108,7 +108,6 @@ GCC_CONFIGURE:= \
|
|||||||
$(call qstrip,$(CONFIG_EXTRA_GCC_CONFIG_OPTIONS)) \
|
$(call qstrip,$(CONFIG_EXTRA_GCC_CONFIG_OPTIONS)) \
|
||||||
$(if $(CONFIG_mips64)$(CONFIG_mips64el),--with-arch=mips64 \
|
$(if $(CONFIG_mips64)$(CONFIG_mips64el),--with-arch=mips64 \
|
||||||
--with-abi=$(call qstrip,$(CONFIG_MIPS64_ABI))) \
|
--with-abi=$(call qstrip,$(CONFIG_MIPS64_ABI))) \
|
||||||
$(if $(CONFIG_arc),--with-cpu=$(CONFIG_CPU_TYPE)) \
|
|
||||||
$(if $(CONFIG_powerpc64), $(if $(CONFIG_USE_MUSL),--with-abi=elfv2)) \
|
$(if $(CONFIG_powerpc64), $(if $(CONFIG_USE_MUSL),--with-abi=elfv2)) \
|
||||||
--with-system-zlib=$(STAGING_DIR_HOST) \
|
--with-system-zlib=$(STAGING_DIR_HOST) \
|
||||||
--with-zstd=$(STAGING_DIR_HOST) \
|
--with-zstd=$(STAGING_DIR_HOST) \
|
||||||
|
|||||||
Reference in New Issue
Block a user