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
2023-11-23 16:43:51 +01:00
committed by Steve Sakoman
parent d1b9e2acaa
commit 239bf770b6

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