kernel-fitImage: Strip path component from dtb

Machines that have added subdirectires to the KERNEL_DEVICETREE
recently, such as arm32 boards that were moved under subdirectories in
Linux 6.5, will have that subdirectory in the node name of the FIT. This
breaks existing systems that select a configuration in u-boot by it's
name.

Strip off the directory component from the device tree to preserve
compatibility.

(From OE-Core rev: 941ba1a132bafa9c9be855fb91fec96d8b06299f)

(From OE-Core rev: 9a42349a176ca4d7a1bfab3425a0821dbcbd9368)

Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de> # backport to kirkstone
Signed-off-by: Steve Sakoman <steve@sakoman.com>
This commit is contained in:
Ninad Palsule authored and Steve Sakoman committed 2023-12-02 16:36:57 -10:00
1 parent d1b9e2acaa
commit 239bf770b6
1 file changed
+5
+5
View File
@@ -542,6 +542,11 @@ fitimage_assemble() {
DTB_PATH="arch/${ARCH}/boot/$DTB"
fi
# Strip off the path component from the filename
if "${@'false' if oe.types.boolean(d.getVar('KERNEL_DTBVENDORED')) else 'true'}"; then
DTB=`basename $DTB`
fi
DTB=$(echo "$DTB" | tr '/' '_')
# Skip DTB if we've picked it up previously