From 5d4359c311287f3899d6163c47e5defc66fcebcd Mon Sep 17 00:00:00 2001 From: Ricardo Pardini Date: Fri, 16 Jan 2026 00:21:57 +0100 Subject: [PATCH 1/3] change-tracking: track most ATF related vars --- lib/functions/configuration/change-tracking.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/functions/configuration/change-tracking.sh b/lib/functions/configuration/change-tracking.sh index 9c769ed9da05..3b1fb37126f6 100644 --- a/lib/functions/configuration/change-tracking.sh +++ b/lib/functions/configuration/change-tracking.sh @@ -44,6 +44,6 @@ function track_general_config_variables() { track_config_variables "${1}" BOARDFAMILY KERNELSOURCE KERNEL_MAJOR_MINOR KERNELBRANCH KERNEL_DESCRIPTION LINUXFAMILY LINUXCONFIG KERNELPATCHDIR KERNEL_PATCH_ARCHIVE_BASE array_values="yes" track_config_variables "${1}" KERNEL_DRIVERS_SKIP track_config_variables "${1}" BOOTSOURCE BOOTSOURCEDIR BOOTBRANCH BOOTPATCHDIR BOOTDIR BOOTCONFIG BOOTBRANCH_BOARD BOOTPATCHDIR_BOARD - track_config_variables "${1}" ATFSOURCEDIR ATFDIR ATFBRANCH CRUSTSOURCEDIR CRUSTDIR CRUSTBRANCH LINUXSOURCEDIR + track_config_variables "${1}" ATF_COMPILE ATF_COMPILER ATFSOURCE ATFSOURCEDIR ATFDIR ATFBRANCH CRUSTSOURCEDIR CRUSTDIR CRUSTBRANCH LINUXSOURCEDIR track_config_variables "${1}" NETWORKING_STACK SKIP_ARMBIAN_REPO } From 5161987c52aefa903a0f2a67e398388aa5a91d41 Mon Sep 17 00:00:00 2001 From: Ricardo Pardini Date: Fri, 16 Jan 2026 00:25:09 +0100 Subject: [PATCH 2/3] config: arch: simplify code; always set ATF_COMPILER if unset - if we get to arch code without an ATF_COMPILER, default it, no matter what the value of ATF_COMPILE is (yes/no/?) --- config/sources/amd64.conf | 4 ++-- config/sources/arm64.conf | 22 ++++++++++++---------- config/sources/armhf.conf | 4 ++-- config/sources/loong64.conf | 4 ++-- config/sources/riscv64.conf | 8 ++++---- 5 files changed, 22 insertions(+), 20 deletions(-) diff --git a/config/sources/amd64.conf b/config/sources/amd64.conf index a3b3db2a22d8..3f3fd8367ecc 100644 --- a/config/sources/amd64.conf +++ b/config/sources/amd64.conf @@ -27,7 +27,7 @@ declare -g KERNEL_BUILD_DTBS="no" # amd64 has no DTBs. that I know of. declare -g KERNEL_IMAGE_TYPE="${KERNEL_IMAGE_TYPE:-"bzImage"}" declare -g KERNEL_INSTALL_TYPE="${KERNEL_INSTALL_TYPE:-"install"}" -declare -g KERNEL_COMPILER="x86_64-linux-gnu-" -declare -g UBOOT_COMPILER='x86_64-linux-gnu-' +declare -g KERNEL_COMPILER="${KERNEL_COMPILER:-"x86_64-linux-gnu-"}" +declare -g UBOOT_COMPILER="${UBOOT_COMPILER:-"x86_64-linux-gnu-"}" true # make sure to exit with 0 status; this protects against shortcircuits etc above. diff --git a/config/sources/arm64.conf b/config/sources/arm64.conf index 51034908aefc..f8fe95393503 100644 --- a/config/sources/arm64.conf +++ b/config/sources/arm64.conf @@ -23,16 +23,18 @@ declare -g KERNEL_INSTALL_TYPE="${KERNEL_INSTALL_TYPE:-"install"}" declare -g NAME_KERNEL="${NAME_KERNEL:-"Image"}" declare -g NAME_INITRD="${NAME_INITRD:-"uInitrd"}" -[[ -z $KERNEL_COMPILER ]] && KERNEL_COMPILER="aarch64-linux-gnu-" -[[ -z $INITRD_ARCH ]] && INITRD_ARCH=arm64 +declare -g ATF_COMPILER="${ATF_COMPILER:-"aarch64-linux-gnu-"}" +declare -g KERNEL_COMPILER="${KERNEL_COMPILER:-"aarch64-linux-gnu-"}" +declare -g UBOOT_COMPILER="${UBOOT_COMPILER:-"aarch64-linux-gnu-"}" +declare -g INITRD_ARCH="${INITRD_ARCH:-"arm64"}" -[[ $ATF_COMPILE != "no" && -z $ATF_COMPILER ]] && ATF_COMPILER="aarch64-linux-gnu-" -[[ -z $UBOOT_COMPILER ]] && UBOOT_COMPILER="aarch64-linux-gnu-" -[[ -z $KERNEL_COMPILER ]] && KERNEL_COMPILER="aarch64-linux-gnu-" - -# @TODO: Those should best be moved to family code / whatever uses this default instead. -[[ $ATF_COMPILE != "no" && -z $ATFSOURCE ]] && ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware' -[[ $ATF_COMPILE != "no" && -z $ATFDIR ]] && ATFDIR='arm-trusted-firmware' -[[ $ATF_COMPILE != "no" && -z $ATFBRANCH ]] && ATFBRANCH='commit:af220ebbe467aa580e6b9ba554676f78ffec930f' +if [[ $ATF_COMPILE != "no" ]]; then + # @TODO: rpardini: This shouldn't be here. Who uses this default? Let's move it to family code. + declare -g ATFSOURCE="${ATFSOURCE:-"https://github.com/ARM-software/arm-trusted-firmware"}" + declare -g ATFDIR="${ATFDIR:-"arm-trusted-firmware"}" + declare -g ATFBRANCH="${ATFBRANCH:-"commit:af220ebbe467aa580e6b9ba554676f78ffec930f"}" +else + display_alert "arch code" "ATF_COMPILE is 'no'" "debug" +fi true # make sure to exit with 0 status; this protects against shortcircuits etc above. diff --git a/config/sources/armhf.conf b/config/sources/armhf.conf index 6d5c8749d511..a9056b375fc8 100644 --- a/config/sources/armhf.conf +++ b/config/sources/armhf.conf @@ -24,7 +24,7 @@ declare -g KERNEL_INSTALL_TYPE="${KERNEL_INSTALL_TYPE:-"zinstall"}" declare -g NAME_KERNEL="${NAME_KERNEL:-"zImage"}" declare -g NAME_INITRD="${NAME_INITRD:-"uInitrd"}" -[[ -z $KERNEL_COMPILER ]] && KERNEL_COMPILER='arm-linux-gnueabihf-' -[[ -z $UBOOT_COMPILER ]] && UBOOT_COMPILER='arm-linux-gnueabihf-' +declare -g KERNEL_COMPILER="${KERNEL_COMPILER:-"arm-linux-gnueabihf-"}" +declare -g UBOOT_COMPILER="${UBOOT_COMPILER:-"arm-linux-gnueabihf-"}" true # make sure to exit with 0 status; this protects against shortcircuits etc above. diff --git a/config/sources/loong64.conf b/config/sources/loong64.conf index 136fbeabb0f1..d901ad20f28d 100644 --- a/config/sources/loong64.conf +++ b/config/sources/loong64.conf @@ -24,7 +24,7 @@ declare -g KERNEL_INSTALL_TYPE="${KERNEL_INSTALL_TYPE:-"install"}" declare -g NAME_KERNEL="${NAME_KERNEL:-"vmlinux"}" declare -g NAME_INITRD="${NAME_INITRD:-"initrd.img"}" -[[ -z $KERNEL_COMPILER ]] && KERNEL_COMPILER='loongarch64-linux-gnu-' -[[ -z $UBOOT_COMPILER ]] && UBOOT_COMPILER='loongarch64-linux-gnu-' +declare -g KERNEL_COMPILER="${KERNEL_COMPILER:-"loongarch64-linux-gnu-"}" +declare -g UBOOT_COMPILER="${UBOOT_COMPILER:-"loongarch64-linux-gnu-"}" true # make sure to exit with 0 status; this protects against shortcircuits etc above. diff --git a/config/sources/riscv64.conf b/config/sources/riscv64.conf index d555cd08294a..08f967c19028 100644 --- a/config/sources/riscv64.conf +++ b/config/sources/riscv64.conf @@ -24,9 +24,9 @@ declare -g KERNEL_INSTALL_TYPE="${KERNEL_INSTALL_TYPE:-"install"}" declare -g NAME_KERNEL="${NAME_KERNEL:-"Image"}" declare -g NAME_INITRD="${NAME_INITRD:-"uInitrd"}" -[[ $ATF_COMPILE != "no" && -z $ATF_COMPILER ]] && ATF_COMPILER="riscv64-linux-gnu-" -[[ -z $KERNEL_COMPILER ]] && KERNEL_COMPILER='riscv64-linux-gnu-' -[[ -z $UBOOT_COMPILER ]] && UBOOT_COMPILER='riscv64-linux-gnu-' -[[ -z $INITRD_ARCH ]] && INITRD_ARCH=riscv +declare -g ATF_COMPILER="${ATF_COMPILER:-"riscv64-linux-gnu-"}" +declare -g KERNEL_COMPILER="${KERNEL_COMPILER:-"riscv64-linux-gnu-"}" +declare -g UBOOT_COMPILER="${UBOOT_COMPILER:-"riscv64-linux-gnu-"}" +declare -g INITRD_ARCH="${INITRD_ARCH:-"riscv"}" true # make sure to exit with 0 status; this protects against shortcircuits etc above. From ca67212da2da6e679f9af7bafb5ae9bbfd8cf27e Mon Sep 17 00:00:00 2001 From: Ricardo Pardini Date: Fri, 16 Jan 2026 00:52:49 +0100 Subject: [PATCH 3/3] rockchip64_common: emit log at the start of `prepare_boot_configuration()` - different families/boards call this method at different times, this helps debug/understand what is going on and when --- config/sources/families/include/rockchip64_common.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/config/sources/families/include/rockchip64_common.inc b/config/sources/families/include/rockchip64_common.inc index 9845eadd286d..f1e395be2f7f 100644 --- a/config/sources/families/include/rockchip64_common.inc +++ b/config/sources/families/include/rockchip64_common.inc @@ -160,6 +160,7 @@ case "$BOOT_SOC" in esac prepare_boot_configuration() { + display_alert "Preparing boot configuration" "rockchip64_common::prepare_boot_configuration()" "info" ATFSOURCE='' ATF_COMPILE='no' case "$BOOT_SCENARIO" in