Re: [PATCH v5 00/22] Add support for the Mobileye EyeQ5 SoC

From: Thomas Bogendoerfer
Date: Thu Dec 21 2023 - 09:56:14 EST


On Thu, Dec 21, 2023 at 08:57:55AM +0100, Gregory CLEMENT wrote:
> I do not oppose the addition of a new platform, even though, like
> Jiaxun, I would prefer to avoid duplicating code. The only thing
> preventing the use of the same kernel for EyeQ5 and other platforms is
> the starting address.

there shouldn't be code duplication.

My rough idea would be something like

diff --git a/arch/mips/Kbuild b/arch/mips/Kbuild
index af2967bffb73..d683993ed331 100644
--- a/arch/mips/Kbuild
+++ b/arch/mips/Kbuild
@@ -17,6 +17,7 @@ obj- := $(platform-y)
# mips object files
# The object files are linked as core-y files would be linked

+obj-y += generic/
obj-y += kernel/
obj-y += mm/
obj-y += net/
diff --git a/arch/mips/generic/Makefile b/arch/mips/generic/Makefile
index e37a59bae0a6..56011d738441 100644
--- a/arch/mips/generic/Makefile
+++ b/arch/mips/generic/Makefile
@@ -4,9 +4,9 @@
# Author: Paul Burton <paul.burton@xxxxxxxx>
#

-obj-y += init.o
-obj-y += irq.o
-obj-y += proc.o
+obj-$(CONFIG_MACH_GENERIC_CORE) += init.o
+obj-$(CONFIG_MACH_GENERIC_CORE) += irq.o
+obj-$(CONFIG_MACH_GENERIC_CORE) += proc.o

obj-$(CONFIG_YAMON_DT_SHIM) += yamon-dt.o
obj-$(CONFIG_LEGACY_BOARD_SEAD3) += board-sead3.o

so everyboady needing these parts of a generic kernel is able
to take it.

> Therefore, if it were possible to have a relocatable kernel, this
> issue would disappear.

yes. There is support for relocatable kernel, so what are we missing
there ?

Thomas.

--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]