On 1/15/25 11:22 AM, Quentin Schulz wrote:
Hi Marek,
On 1/12/25 11:34 PM, Marek Vasut wrote:
Introduce board/renesas/common/Makefile and remove the multiple
duplicate copies of obj := ../common/*.o from board Makefiles.
Let the build system include the common Makefile using the
HAVE_VENDOR_COMMON_LIB and build the common objects that are
shared by all the boards that way. No functional change intended.
Thanks for highlighting this HAVE_VENDOR_COMMON_LIB mechanism, I'm now
planning on migrating the Theobroma boards to that :) (I would need
https://lore.kernel.org/u-boot/20250112223252.179123-1-
marek.vasut+rene...@mailbox.org/ though :) ).
Some of the remaining board files which include board specific
settings have been updated to use obj-y += to avoid rewriting
the board obj-y target and avoid dropping object files from the
build.
Board Makefiles cannot be empty, else they do not generate built-in.o,
move the CONFIG_XPL_BUILD ifdeffery from Makefiles into .c files to
make sure there is always a built-in.o generated from the remaining
minimal Makefiles. This will be further cleaned up in follow up patches.
Unrelated, but I misread the commit log and was wondering whether this
patch series would work without the additional patch from https://
lore.kernel.org/u-boot/20250112223252.179123-1-
marek.vasut+rene...@mailbox.org/ so wanted to build an Rcar defconfig to
verify but I'm unable to build r8a779f0_spider_defconfig from master:
/usr/bin/aarch64-linux-gnu-ld: /usr/lib/gcc/aarch64-linux-gnu/14/
libgcc.a(lse-init.o): in function `init_have_lse_atomics':
/builddir/build/BUILD/cross-gcc-14.2.1-build/gcc-14.2.1-20240912/
aarch64-linux-gnu/aarch64-linux-gnu/libgcc/../../../gcc-14.2.1-20240912/
libgcc/config/aarch64/lse-init.c:46:(.text.startup+0xc): undefined
reference to `__getauxval'
[...]
collect2: fatal error: ld terminated with signal 11 [Segmentation
fault], core dumped
compilation terminated.
make: *** [Makefile:1812: u-boot] Error 1
make: *** Deleting file 'u-boot'
so cannot check myself.
I'm running Fedora 41.
$ aarch64-linux-gnu-gcc --version
aarch64-linux-gnu-gcc (GCC) 14.2.1 20240912 (Red Hat Cross 14.2.1-1)
Debian testing/unstable is at 14.2.0 and spider builds just fine.
Do you observe this failure with or without these patches applied ?
[...]
+++ b/board/renesas/common/Makefile
@@ -0,0 +1,45 @@
+#
+# board/renesas/whitehawk/Makefile
+#
+# Copyright (C) 2024 Marek Vasut <marek.vasut+rene...@mailbox.org>
+#
+# SPDX-License-Identifier: GPL-2.0+
+#
+
+# R-Car SoCs
+ifndef CONFIG_RZG2L
+
This is a bit out of context, can you explain why this suddenly is here?
Fixed in V2
+# 32 bit SoCs
+ifdef CONFIG_RCAR_GEN2
+endif
+
Not sure we need this noop?
This is preparation for R-Car Gen2 deduplication which might happen
sometimes.
Also this probably should rather be CONFIG_RCAR_32 instead?
R-Car Gen2 is the only supported 32bit R-Car . I will have to add both
ifdef RCAR_32
ifdef RCAR_GEN2
[...]
--- a/board/renesas/whitehawk/Makefile
+++ /dev/null
@@ -1,13 +0,0 @@
-#
-# board/renesas/whitehawk/Makefile
-#
-# Copyright (C) 2021 Renesas Electronics Corp.
-#
-# SPDX-License-Identifier: GPL-2.0+
-#
-
-ifdef CONFIG_SPL_BUILD
-obj-y := ../common/gen4-spl.o
-else
-obj-y := ../common/gen4-common.o ../common/common.o
-endif
This honestly was a bit difficult to review and felt like more than one
change was made at once.
The #if !IS_ENABLED(CONFIG_XPL_BUILD) changes could have been made in a
separate commit I believe.
This is actually bogus, so I dropped the whole thing.
The rest is fixed, thanks .