[PATCH] Makefile: Ensure initrd parameters in /chosen are up-to-date

Dave Martin Dave.Martin at arm.com
Mon May 12 08:09:44 PDT 2025


The initrd parameters in the FDT /chosen node are fixed when the device
tree blob is generated, so it is important to regenerate the device
tree if the initrd image has been updated.

Currently this does not happen, so the parameters can be stale.
In particular, if the initrd image is bigger than it was when the
device tree was first generated then the value of the linux,initrd-end
parameter is too small, leading to truncation of the initrd image on
boot even though the whole image is present in linux-system.axf.

Make $(FILESYSTEM) a dependency of fdt.dtb so that the parameters are
refreshed properly based on the current initrd image (if any).

Without --with-initrd, FILESYSTEM is the empty string and the
dependency evaporates, which is just fine.

Signed-off-by: Dave Martin <Dave.Martin at arm.com>
---
 Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile.am b/Makefile.am
index a8d5c1b..0178e5d 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -185,7 +185,7 @@ model.lds: $(LD_SCRIPT) Makefile
 DTC_NOWARN  = $(call test-dtc-option,-Wno-clocks_property)
 DTC_NOWARN += $(call test-dtc-option,-Wno-gpios_property)
 
-fdt.dtb: $(KERNEL_DTB) Makefile
+fdt.dtb: $(KERNEL_DTB) Makefile $(FILESYSTEM)
 	( $(DTC) -O dts -I dtb $(KERNEL_DTB) ; echo "/ { $(CHOSEN_NODE) $(PSCI_NODE) }; $(CPU_NODES)" ) | $(DTC) -O dtb -o $@ $(DTC_NOWARN) -
 
 # The filesystem archive might not exist if INITRD is not being used
-- 
2.34.1




More information about the linux-arm-kernel mailing list