forked from Openwrt/openwrt
c2a5cd110c
Make the OF-compatible zImage per-board selectable. This allows the image to only be built with the wrapper if the target actually uses it. This fixes build-failures for the mpc85xx-p2020 subtarget. Fixes: 557c094f0579 ("mpc85xx: only build zImage on required targets") Signed-off-by: David Bauer <mail@david-bauer.net>
62 lines
2.1 KiB
Diff
62 lines
2.1 KiB
Diff
From b30ba76a980b3a9282f309c23e3bb0b0eb2c72cd Mon Sep 17 00:00:00 2001
|
|
From: David Bauer <mail@david-bauer.net>
|
|
Date: Thu, 30 May 2024 02:55:38 +0200
|
|
Subject: [PATCH] powerpc: add compressed zImage for mpc85xx
|
|
|
|
Add a universal zImage which can be loaded by mpc85xx boards at
|
|
load address 0x3000000. This allows boards to boot kernels larger than
|
|
16MB even if the image is loaded temporarily from NAND at offset
|
|
0x1000000 which some bootloaders do by default.
|
|
|
|
Signed-off-by: David Bauer <mail@david-bauer.net>
|
|
---
|
|
arch/powerpc/boot/Makefile | 1 +
|
|
arch/powerpc/boot/wrapper | 5 +++++
|
|
2 files changed, 6 insertions(+)
|
|
|
|
--- a/arch/powerpc/boot/Makefile
|
|
+++ b/arch/powerpc/boot/Makefile
|
|
@@ -175,6 +175,7 @@ src-plat-$(CONFIG_EMBEDDED6xx) += cuboot
|
|
src-plat-$(CONFIG_AMIGAONE) += cuboot-amigaone.c
|
|
src-plat-$(CONFIG_PPC_PS3) += ps3-head.S ps3-hvcall.S ps3.c
|
|
src-plat-$(CONFIG_EPAPR_BOOT) += epapr.c epapr-wrapper.c
|
|
+src-plat-$(CONFIG_PPC_ZIMAGE_LA3000000) += fixed-head.S
|
|
src-plat-$(CONFIG_PPC_PSERIES) += pseries-head.S
|
|
src-plat-$(CONFIG_PPC_POWERNV) += pseries-head.S
|
|
src-plat-$(CONFIG_PPC_IBM_CELL_BLADE) += pseries-head.S
|
|
@@ -345,6 +346,7 @@ image-$(CONFIG_MPC836x_MDS) += cuImage.
|
|
image-$(CONFIG_ASP834x) += dtbImage.asp834x-redboot
|
|
|
|
# Board ports in arch/powerpc/platform/85xx/Kconfig
|
|
+image-$(CONFIG_PPC_ZIMAGE_LA3000000) += zImage.la3000000
|
|
image-$(CONFIG_MPC8540_ADS) += cuImage.mpc8540ads
|
|
image-$(CONFIG_MPC8560_ADS) += cuImage.mpc8560ads
|
|
image-$(CONFIG_MPC85xx_CDS) += cuImage.mpc8541cds \
|
|
--- a/arch/powerpc/boot/wrapper
|
|
+++ b/arch/powerpc/boot/wrapper
|
|
@@ -254,6 +254,11 @@ if [ -n "$esm_blob" -a "$platform" != "p
|
|
fi
|
|
|
|
case "$platform" in
|
|
+la3000000)
|
|
+ binary=y
|
|
+ platformo="$object/fixed-head.o $object/of.o $object/epapr.o"
|
|
+ link_address='0x3000000'
|
|
+ ;;
|
|
of)
|
|
platformo="$object/of.o $object/epapr.o"
|
|
make_space=n
|
|
--- a/arch/powerpc/Kconfig
|
|
+++ b/arch/powerpc/Kconfig
|
|
@@ -74,6 +74,10 @@ config NMI_IPI
|
|
depends on SMP && (DEBUGGER || KEXEC_CORE || HARDLOCKUP_DETECTOR)
|
|
default y
|
|
|
|
+config PPC_ZIMAGE_LA3000000
|
|
+ bool
|
|
+ default n
|
|
+
|
|
config PPC_WATCHDOG
|
|
bool
|
|
depends on HARDLOCKUP_DETECTOR
|