u-boot-olimex: Limit olimex patch to current version

devtool for an unrelated board with a different version of u-boot-imx
can fail if the olimex patch is not valid:
```
ERROR: Applying patch '0001-Add-Olimex-iMX8MP-SOM-EVB-IND.patch' on target directory '/.../tmp/work/imx943_19x19_lpddr4_evk-poky-linux/u-boot-imx/2025.04/devtooltmp-2kb8sbhi/workdir/git'
BBHandledException("Applying '0001-Add-Olimex-iMX8MP-SOM-EVB-IND.patch' failed:
stdout: checking file arch/arm/dts/Makefile
Hunk #1 FAILED at 1168.
1 out of 1 hunk FAILED
checking file arch/arm/dts/imx8mp-olimex.dts
checking file arch/arm/mach-imx/imx8m/Kconfig
Hunk #1 succeeded at 500 (offset 54 lines).
Hunk #2 FAILED at 492.
1 out of 2 hunks FAILED
```

Fix the problem by making an olimex-specific recipe.

Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
(cherry picked from commit 011a891925)
This commit is contained in:
Tom Hochstein 2025-08-26 07:44:58 -05:00 committed by github-actions[bot]
parent 68d47bf4dd
commit a0837afda0
5 changed files with 96 additions and 4 deletions

View File

@ -47,7 +47,7 @@ KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/imx8mp-olimex.dtb \
"
IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-olimex"
IMX_DEFAULT_KERNEL:use-nxp-bsp = "linux-fslc"
UBOOT_CONFIG_BASENAME = "imx8mp_olimex"

View File

@ -1,3 +0,0 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
SRC_URI:append:olimex-imx8mp-evb = " file://0001-Add-Olimex-iMX8MP-SOM-EVB-IND.patch"

View File

@ -0,0 +1,25 @@
DESCRIPTION = "i.MX U-Boot suppporting i.MX reference boards."
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "${UBOOT_SRC};branch=${SRCBRANCH}"
UBOOT_SRC ?= "git://github.com/nxp-imx/uboot-imx.git;protocol=https"
SRCBRANCH = "lf_v2024.04"
LOCALVERSION ?= "-${SRCBRANCH}"
SRCREV = "e3219a5a73445219df605d1492687918d488055c"
DEPENDS += " \
bc-native \
bison-native \
dtc-native \
flex-native \
gnutls-native \
xxd-native \
"
B = "${WORKDIR}/build"
inherit fsl-u-boot-localversion
BOOT_TOOLS = "imx-boot-tools"

View File

@ -0,0 +1,70 @@
# Copyright (C) 2013-2016 Freescale Semiconductor
# Copyright 2018 (C) O.S. Systems Software LTDA.
# Copyright 2017-2024 NXP
require recipes-bsp/u-boot/u-boot.inc
require u-boot-olimex-common_${PV}.inc
PROVIDES += "u-boot u-boot-mfgtool"
SRC_URI:append:olimex-imx8mp-evb = " file://0001-Add-Olimex-iMX8MP-SOM-EVB-IND.patch"
inherit uuu_bootloader_tag
# The UUU tag goes on the boot partition. For 8+, the boot partition image
# is imx-boot, so disable UUU-tagging here
UUU_BOOTLOADER:mx8-generic-bsp = ""
UUU_BOOTLOADER:mx9-generic-bsp = ""
TOOLCHAIN_OPTIONS:append = " -Wno-error=implicit-function-declaration"
do_deploy:append:mx8m-generic-bsp() {
# Deploy u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary
if [ -n "${UBOOT_CONFIG}" ]
then
for config in ${UBOOT_MACHINE}; do
i=$(expr $i + 1);
for type in ${UBOOT_CONFIG}; do
j=$(expr $j + 1);
if [ $j -eq $i ]
then
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${B}/${config}/u-boot-nodtb.bin ${DEPLOYDIR}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${type}
UBOOT_DTB_NAME_FLAGS="${type}:${UBOOT_DTB_NAME}"
for key_value in ${UBOOT_DTB_NAME_FLAGS}; do
local type_key="${key_value%%:*}"
local dtb_name="${key_value#*:}"
if [ "$type_key" = "$type" ]
then
bbnote "UBOOT_CONFIG = $type, UBOOT_DTB_NAME = $dtb_name"
# There is only one ${dtb_name}, the first one. All the other are with the type appended
if [ ! -f "${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}" ]; then
install -m 0644 ${B}/${config}/arch/arm/dts/${dtb_name} ${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}
else
bbwarn "Use custom wks.in for $dtb_name = $type"
fi
install -m 0644 ${B}/${config}/arch/arm/dts/${dtb_name} ${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}-${type}
fi
unset type_key
unset dtb_name
done
unset UBOOT_DTB_NAME_FLAGS
fi
done
unset j
done
unset i
fi
# Deploy CRT.* from u-boot for stmm
install -m 0644 ${S}/CRT.* ${DEPLOYDIR}
}
do_deploy:append:mx93-generic-bsp() {
# Deploy CRT.* from u-boot for stmm
install -m 0644 ${S}/CRT.* ${DEPLOYDIR}
}
PACKAGE_ARCH = "${MACHINE_ARCH}"
COMPATIBLE_MACHINE = "(mx6-generic-bsp|mx7-generic-bsp|mx8-generic-bsp|mx9-generic-bsp)"