diff mbox series

armv8: spl: Fix build with LINUX_KERNEL_IMAGE_HEADER

Message ID 20220129152704.15771-1-alpernebiyasak@gmail.com
State Accepted
Commit 22eb7ba80e8789867bb1a103e1aa61765d6b0865
Delegated to: Tom Rini
Headers show
Series armv8: spl: Fix build with LINUX_KERNEL_IMAGE_HEADER | expand

Commit Message

Alper Nebi Yasak Jan. 29, 2022, 3:27 p.m. UTC
Setting LINUX_KERNEL_IMAGE_HEADER=y attempts to include an ARM64 Linux
kernel image header at the start of both U-Boot proper and SPL binaries.
However, some definitions that the image header uses are not included by
the SPL linker script, resulting in a build error. Include them the way
they are included in U-Boot proper's linker script to fix the error.

Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
---
I won't actually need this header in the SPL, but I need the build to
succeed with SPL and this config both selected. I did test that booting
bare-metal still works on my rk3399 chromebook_kevin with this.

 arch/arm/cpu/armv8/u-boot-spl.lds | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Tom Rini Feb. 4, 2022, 12:40 a.m. UTC | #1
On Sat, Jan 29, 2022 at 06:27:03PM +0300, Alper Nebi Yasak wrote:

> Setting LINUX_KERNEL_IMAGE_HEADER=y attempts to include an ARM64 Linux
> kernel image header at the start of both U-Boot proper and SPL binaries.
> However, some definitions that the image header uses are not included by
> the SPL linker script, resulting in a build error. Include them the way
> they are included in U-Boot proper's linker script to fix the error.
> 
> Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/arch/arm/cpu/armv8/u-boot-spl.lds b/arch/arm/cpu/armv8/u-boot-spl.lds
index 9edb662b094a..730eb93dbc3b 100644
--- a/arch/arm/cpu/armv8/u-boot-spl.lds
+++ b/arch/arm/cpu/armv8/u-boot-spl.lds
@@ -84,4 +84,8 @@  SECTIONS
 	/DISCARD/ : { *(.plt*) }
 	/DISCARD/ : { *(.interp*) }
 	/DISCARD/ : { *(.gnu*) }
+
+#ifdef CONFIG_LINUX_KERNEL_IMAGE_HEADER
+#include "linux-kernel-image-header-vars.h"
+#endif
 }