From 9ef471c833dc8ddcffceac652c2dde67d4cc73ee Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Tue, 15 Jul 2025 22:10:12 +0200 Subject: [PATCH 01/25] meta-digi: revert revisions to AUTOREV Signed-off-by: Arturo Buzarra --- .../recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.10.bbappend | 4 ++-- .../recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend | 4 ++-- meta-digi-arm/recipes-bsp/u-boot/u-boot-dey.inc | 2 +- meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb | 2 +- meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2024.04.bb | 2 +- .../recipes-digi/trustfence/trustfence-sign-tools.inc | 4 ++-- .../kernel-module-qualcomm/kernel-module-qualcomm.bb | 4 ++-- meta-digi-arm/recipes-kernel/linux/linux-dey.inc | 2 +- meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb | 4 ++-- meta-digi-dey/recipes-digi/cccs/cccs_git.bb | 4 ++-- meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc | 4 ++-- meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb | 4 ++-- 12 files changed, 20 insertions(+), 20 deletions(-) diff --git a/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.10.bbappend b/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.10.bbappend index fa7594510..36f5e376b 100644 --- a/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.10.bbappend +++ b/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.10.bbappend @@ -11,10 +11,10 @@ TFA_URI_GITHUB = "${DIGI_GITHUB_GIT}/arm-trusted-firmware.git;protocol=https" TFA_GIT_URI ?= "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${TFA_URI_STASH}', '${TFA_URI_GITHUB}', d)}" SRCBRANCH = "v2.10/stm32mp/maint" -SRCREV = "e22f7d89868db1d909d582be9bdd73679648a438" +SRCREV = "${AUTOREV}" SRC_URI = " \ - ${TFA_GIT_URI};nobranch=1 \ + ${TFA_GIT_URI};branch=${SRCBRANCH} \ " # stm32mp15 = header-version 1 diff --git a/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend b/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend index a2c9d912d..244c79843 100644 --- a/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend +++ b/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend @@ -11,9 +11,9 @@ OPTEE_URI_GITHUB = "${DIGI_GITHUB_GIT}/optee_os.git;protocol=https" OPTEE_GIT_URI ?= "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${OPTEE_URI_STASH}', '${OPTEE_URI_GITHUB}', d)}" SRCBRANCH = "4.0.0/stm/maint" -SRCREV = "da06ccf751938a642805f11b7aae3d7cde5f6917" +SRCREV = "${AUTOREV}" SRC_URI = " \ - ${OPTEE_GIT_URI};nobranch=1;name=os \ + ${OPTEE_GIT_URI};branch=${SRCBRANCH};name=os \ file://fonts.tar.gz;subdir=git;name=fonts \ " diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey.inc b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey.inc index 1fe0a3d8f..dc0cc52d2 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey.inc +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey.inc @@ -27,7 +27,7 @@ INSTALL_FW_UBOOT_SCRIPTS = " \ " SRC_URI = " \ - ${UBOOT_GIT_URI};nobranch=1 \ + ${UBOOT_GIT_URI};branch=${SRCBRANCH} \ file://boot.txt \ file://install_linux_fw_media.txt \ file://install_linux_fw_uuu.sh \ diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb index 910ea1125..32bd7b349 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb @@ -7,7 +7,7 @@ DEPENDS += "flex-native bison-native" DEPENDS += "python3-setuptools-native" SRCBRANCH = "v2023.10/maint" -SRCREV = "24d88c49b38399c6d20325c586587b992717c006" +SRCREV = "${AUTOREV}" SRC_URI += " \ ${@oe.utils.conditional('TRUSTFENCE_SIGN_FIT_STM', '1', 'file://fit_signature.cfg', '', d)} \ diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2024.04.bb b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2024.04.bb index c596ec66c..902616a60 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2024.04.bb +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2024.04.bb @@ -7,6 +7,6 @@ LIC_FILES_CHKSUM = "file://Licenses/README;md5=2ca5f2c35c8cc335f0a19756634782f1" DEPENDS += "flex-native bison-native" SRCBRANCH = "v2024.04/maint" -SRCREV = "dc2bd5d288ca472cb200c4c4e40c098ce14e84d5" +SRCREV = "${AUTOREV}" COMPATIBLE_MACHINE = "(ccimx6ul|ccimx8m|ccimx8x|ccimx9)" diff --git a/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools.inc b/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools.inc index f066aaf33..d27e2b2e6 100644 --- a/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools.inc +++ b/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools.inc @@ -5,7 +5,7 @@ LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6" SRCBRANCH = "v2024.04/maint" -SRCREV = "dc2bd5d288ca472cb200c4c4e40c098ce14e84d5" +SRCREV = "${AUTOREV}" S = "${WORKDIR}" @@ -15,7 +15,7 @@ UBOOT_URI_GITHUB = "${DIGI_GITHUB_GIT}/u-boot.git;protocol=https" UBOOT_GIT_URI ?= "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${UBOOT_URI_STASH}', '${UBOOT_URI_GITHUB}', d)}" SRC_URI = " \ - ${UBOOT_GIT_URI};nobranch=1 \ + ${UBOOT_GIT_URI};branch=${SRCBRANCH} \ file://trustfence-sign-artifact-nxp.sh \ file://trustfence-sign-artifact-stm.sh \ file://trustfence-gen-pki-stm.sh \ diff --git a/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb b/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb index 47d37d0c8..6b2061aeb 100644 --- a/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb +++ b/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb @@ -9,12 +9,12 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/ISC;md5=f3b90e78ea0cffb20bf5cca PV = "v4.0.11.213X" SRCBRANCH = "qca65X4/dey-5.0/maint" -SRCREV = "81f2e6d27c127f7bce54d348310919e6b3e3972a" +SRCREV = "${AUTOREV}" QCOM_GIT_URI = "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${DIGI_MTK_GIT}/linux/qcacld-2.0.git;protocol=ssh', '${DIGI_GITHUB_GIT}/qcacld-2.0.git;protocol=https', d)}" SRC_URI = " \ - ${QCOM_GIT_URI};nobranch=1 \ + ${QCOM_GIT_URI};branch=${SRCBRANCH} \ " # Selects whether the interface is SDIO or PCI diff --git a/meta-digi-arm/recipes-kernel/linux/linux-dey.inc b/meta-digi-arm/recipes-kernel/linux/linux-dey.inc index 029cf1bcd..3ad4a7016 100644 --- a/meta-digi-arm/recipes-kernel/linux/linux-dey.inc +++ b/meta-digi-arm/recipes-kernel/linux/linux-dey.inc @@ -10,7 +10,7 @@ require ${@oe.utils.conditional('TRUSTFENCE_SIGN', '1', 'recipes-kernel/linux/li DEPENDS += "${@oe.utils.conditional('DEY_SOC_VENDOR', 'NXP', 'lzop-native', '', d)}" SRC_URI = " \ - ${LINUX_GIT_URI};nobranch=1 \ + ${LINUX_GIT_URI};branch=${SRCBRANCH} \ ${@oe.utils.conditional('KERNEL_DEFCONFIG', '', 'file://defconfig', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'virtualization', 'file://docker_conf.cfg', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'tsn', 'file://tsn_conf.cfg', '', d)} \ diff --git a/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb b/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb index 7e33e65e7..b8d792fc2 100644 --- a/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb +++ b/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb @@ -4,8 +4,8 @@ require recipes-kernel/linux/linux-dey.inc SRCBRANCH = "v6.6/nxp/dey-5.0/maint" SRCBRANCH:stm32mpcommon = "v6.6/stm/dey-5.0/maint" -SRCREV = "480779ca1cae17cb9de0af0f185634e5529c7c2e" -SRCREV:stm32mpcommon = "dd850e7ac5870c41055d5e4c37694f86135a3e67" +SRCREV = "${AUTOREV}" +SRCREV:stm32mpcommon = "${AUTOREV}" # Define RT patches per machine RT_FILES:use-nxp-bsp = " \ diff --git a/meta-digi-dey/recipes-digi/cccs/cccs_git.bb b/meta-digi-dey/recipes-digi/cccs/cccs_git.bb index 29c0f3f15..7e623890c 100644 --- a/meta-digi-dey/recipes-digi/cccs/cccs_git.bb +++ b/meta-digi-dey/recipes-digi/cccs/cccs_git.bb @@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MPL-2.0;md5=815ca599c9df247a0c7 DEPENDS = "libconfuse libdigiapix openssl recovery-utils swupdate zlib json-c" SRCBRANCH = "dey-5.0/maint" -SRCREV = "7f1a3c54fbc1536872fc87390104414e41b92f49" +SRCREV = "${AUTOREV}" CC_STASH = "gitsm://git@stash.digi.com/cc/cc_dey.git;protocol=ssh" CC_GITHUB = "gitsm://github.com/digi-embedded/cc_dey.git;protocol=https" @@ -19,7 +19,7 @@ CCCS_DEVICE_TYPE ?= "${MACHINE}" CCCS_CONF_PATH ?= "" SRC_URI = " \ - ${CC_GIT_URI};nobranch=1 \ + ${CC_GIT_URI};branch=${SRCBRANCH} \ file://cccsd-init \ file://cccsd.service \ file://cccsd.tab \ diff --git a/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc b/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc index fd0f96a03..852a67bee 100644 --- a/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc +++ b/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc @@ -1,11 +1,11 @@ # Copyright (C) 2019-2025, Digi International Inc. SRCBRANCH = "dey-5.0/maint" -SRCREV = "4250a5e09885284764620c6defa9fc42affee0ab" +SRCREV = "${AUTOREV}" DEY_EXAMPLES_STASH = "${DIGI_MTK_GIT}/dey/dey-examples.git;protocol=ssh" DEY_EXAMPLES_GITHUB = "${DIGI_GITHUB_GIT}/dey-examples.git;protocol=https" DEY_EXAMPLES_GIT_URI ?= "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${DEY_EXAMPLES_STASH}', '${DEY_EXAMPLES_GITHUB}', d)}" -SRC_URI = "${DEY_EXAMPLES_GIT_URI};nobranch=1" +SRC_URI = "${DEY_EXAMPLES_GIT_URI};branch=${SRCBRANCH}" diff --git a/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb b/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb index f142b8250..3e4f5b7a8 100644 --- a/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb +++ b/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb @@ -7,7 +7,7 @@ LICENSE = "ISC" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/ISC;md5=f3b90e78ea0cffb20bf5cca7947a896d" SRCBRANCH ?= "dey-5.0/maint" -SRCREV = "59ffac2b50fa48a06046a3267e0ec8219081ef39" +SRCREV = "${AUTOREV}" LIBDIGIAPIX_URI_STASH = "${DIGI_MTK_GIT}/dey/libdigiapix.git;protocol=ssh" LIBDIGIAPIX_URI_GITHUB = "${DIGI_GITHUB_GIT}/libdigiapix.git;protocol=https" @@ -15,7 +15,7 @@ LIBDIGIAPIX_URI_GITHUB = "${DIGI_GITHUB_GIT}/libdigiapix.git;protocol=https" LIBDIGIAPIX_GIT_URI ?= "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${LIBDIGIAPIX_URI_STASH}', '${LIBDIGIAPIX_URI_GITHUB}', d)}" SRC_URI = " \ - ${LIBDIGIAPIX_GIT_URI};nobranch=1 \ + ${LIBDIGIAPIX_GIT_URI};branch=${SRCBRANCH} \ file://99-digiapix.rules \ file://libdigiapix.conf \ file://digiapix.sh \ From 3bb174b1a1587a319c3441d42e995f2e38f7532e Mon Sep 17 00:00:00 2001 From: Hector Palacios Date: Sun, 27 Jul 2025 11:30:40 +1000 Subject: [PATCH 02/25] trustfence-cst: fix dependency on openssl-native Reported-by: Ben Kollar Signed-off-by: Hector Palacios --- .../recipes-bsp/trustfence-cst/trustfence-cst-3.4.1.inc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meta-digi-arm/recipes-bsp/trustfence-cst/trustfence-cst-3.4.1.inc b/meta-digi-arm/recipes-bsp/trustfence-cst/trustfence-cst-3.4.1.inc index 5a460989a..f76b9b549 100644 --- a/meta-digi-arm/recipes-bsp/trustfence-cst/trustfence-cst-3.4.1.inc +++ b/meta-digi-arm/recipes-bsp/trustfence-cst/trustfence-cst-3.4.1.inc @@ -1,4 +1,4 @@ -# Copyright (C) 2017-2024, Digi International Inc. +# Copyright (C) 2017-2025, Digi International Inc. SUMMARY = "NXP Code signing Tool for the High Assurance Boot library" DESCRIPTION = "Provides software code signing support designed for use with \ @@ -7,7 +7,7 @@ HOMEPAGE = "https://www.nxp.com/webapp/Download?colCode=IMX_CST_TOOL" LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE.bsd3;md5=14aba05f9fa6c25527297c8aac95fcf6" -DEPENDS = "byacc-native flex-native openssl" +DEPENDS = "byacc-native flex-native openssl-native" SRC_URI = " \ ${DIGI_PKG_SRC}/cst-${PV}.tgz;name=cst \ From 6ace4e38f807172e3b0bb2b20edcbbef2bb8cad9 Mon Sep 17 00:00:00 2001 From: Isaac Hermida Date: Mon, 21 Jul 2025 18:26:46 +0200 Subject: [PATCH 03/25] swupdate: mmc uboot: enable write access to update U-Boot artifact While on it, remove the third argument to write_artifact_emmc function, as write access is always needed to write in U-Boot partitions, otherwise they would be 'ro' protected. https://onedigi.atlassian.net/browse/DEL-9735 Signed-off-by: Isaac Hermida (cherry picked from commit 5001419caf680adb55655678cb0ca4b764262f05) Signed-off-by: Hector Palacios --- .../swu-images/files/swupdate_uboot_mmc.sh | 21 +++++++------------ 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh b/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh index c4e805f39..032922afc 100755 --- a/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh +++ b/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh @@ -241,19 +241,14 @@ write_artifact_emmc () { local BLOCK_TO_WRITE="$1" local FILE_TO_WRITE="$2" - local ENABLE_WRITE_ACCESS="$3" - if [ "${ENABLE_WRITE_ACCESS}" -eq 1 ]; then - # Enable write access in the partition. - echo 0 > "/sys/block/${BLOCK_TO_WRITE}/force_ro" - fi + # Enable write access in the partition. + echo 0 > "/sys/block/${BLOCK_TO_WRITE}/force_ro" # Write the file into the eMMC. dd if="${FILE_TO_WRITE}" of="/dev/${BLOCK_TO_WRITE}" seek="${UBOOT_SEEK_KB}" bs=1K 2>/dev/null local rc=$? - if [ "${ENABLE_WRITE_ACCESS}" -eq 1 ]; then - # Disable write access in partition. - echo 1 > "/sys/block/${BLOCK_TO_WRITE}/force_ro" - fi + # Disable write access in partition. + echo 1 > "/sys/block/${BLOCK_TO_WRITE}/force_ro" # Check update operation result. if [ "${rc}" -ne 0 ]; then exit_error "## ERROR: failed to write file ${FILE_TO_WRITE} to /dev/${BLOCK_TO_WRITE}" "${rc}" @@ -269,19 +264,19 @@ fi # Write TFA. if expr "${PLATFORM}" : "ccmp2.*" >/dev/null; then # Write TFA artifact into eMMC BOOT1 and BOOT2 partitions. - write_artifact_emmc ${UBOOT_BLOCK_MAIN} ${UBOOT_TFA_FILE} 1 + write_artifact_emmc ${UBOOT_BLOCK_MAIN} ${UBOOT_TFA_FILE} if [ "${UBOOT_REDUNDANT}" = "redundant" ]; then - write_artifact_emmc ${UBOOT_BLOCK_REDUNDANT} ${UBOOT_TFA_FILE} 1 + write_artifact_emmc ${UBOOT_BLOCK_REDUNDANT} ${UBOOT_TFA_FILE} fi # Redefine block devices to write FIP artifact into 'fip-a' and 'fip-b' partitions. UBOOT_BLOCK_MAIN="mmcblk0p3" UBOOT_BLOCK_REDUNDANT="mmcblk0p4" fi # Write U-Boot -write_artifact_emmc ${UBOOT_BLOCK_MAIN} ${UBOOT_FILE} 0 +write_artifact_emmc ${UBOOT_BLOCK_MAIN} ${UBOOT_FILE} # Check if redundant U-Boot update is requested. if [ "${UBOOT_REDUNDANT}" = "redundant" ]; then - write_artifact_emmc ${UBOOT_BLOCK_REDUNDANT} ${UBOOT_FILE} 0 + write_artifact_emmc ${UBOOT_BLOCK_REDUNDANT} ${UBOOT_FILE} fi # Clean intermediate artifacts. clean_artifacts From fc41a76853792528e0f102e0faac3e398d88be6b Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Tue, 3 Jun 2025 17:54:22 +0200 Subject: [PATCH 04/25] Create ConnectCore Security Services .bbclass This .bbclass allows to generate a .zip file per image, each containing all of the necessary information to run a CVE scan using the Digi ConnectCore Security Services' CVE analysis tool. https://onedigi.atlassian.net/browse/DEL-9632 Signed-off-by: Gabriel Valcazar (cherry picked from commit fabce3a881454c8a7346538127da5f22862654b6) --- meta-digi-dey/classes/ccss.bbclass | 76 ++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 meta-digi-dey/classes/ccss.bbclass diff --git a/meta-digi-dey/classes/ccss.bbclass b/meta-digi-dey/classes/ccss.bbclass new file mode 100644 index 000000000..bebcacf51 --- /dev/null +++ b/meta-digi-dey/classes/ccss.bbclass @@ -0,0 +1,76 @@ +########################################################### +# +# classes/ccss.bbclass - ConnectCore Security Services +# +# Generates an SBOM for the CCSS CVE analysis tool +# +# Copyright (C) 2025 Digi International +# +# +# This source is released under the MIT License. +# +########################################################### + +inherit vigiles + +CCSS_API_VERSION = "0.1" +CCSS_IMAGE_TYPE ?= "dev" +CCSS_ENABLE ?= "0" + +python do_ccss_generate_sbom() { + import json + import os + import shutil + import tempfile + + # Temporary dir to store all files in the SBOM + ccss_tmp_dir = tempfile.mkdtemp(dir=d.getVar('TOPDIR')) + + try: + manifest_file = os.path.join(d.getVar('VIGILES_DIR'), d.getVar('VIGILES_MANIFEST_NAME') + d.getVar('VIGILES_MANIFEST_SUFFIX')) + ccss_kconfig = os.path.join(d.getVar('VIGILES_DIR'),'.'.join([_get_kernel_pf(d), 'config'])) + ccss_uconfig = os.path.join(d.getVar('VIGILES_DIR'),'.'.join([_get_uboot_pf(d), 'config'])) + + # Copy Vigiles manifest and kernel/uboot configs if they're available + if os.path.exists(manifest_file): + shutil.copy(manifest_file, os.path.join(ccss_tmp_dir, 'manifest.json'), follow_symlinks=True) + if os.path.exists(ccss_kconfig): + shutil.copy(ccss_kconfig, os.path.join(ccss_tmp_dir, 'kernel.config'), follow_symlinks=True) + if os.path.exists(ccss_uconfig): + shutil.copy(ccss_uconfig, os.path.join(ccss_tmp_dir, 'uboot.config'), follow_symlinks=True) + + dict_out = dict( + api_version = d.getVar('CCSS_API_VERSION'), + date = d.getVar('DATETIME'), + has_ccss_patches = bb.utils.contains('BBFILE_COLLECTIONS', 'digi-security', 'y', 'n', d), + image_type = d.getVar('CCSS_IMAGE_TYPE'), + som = d.getVar('DIGI_SOM'), + yocto_codename = d.getVar('DISTRO_CODENAME') + ) + + with open(os.path.join(ccss_tmp_dir, 'config.json'), 'w') as f_out: + s = json.dumps(dict_out, indent=2, sort_keys=True) + f_out.write(s) + + # Create .zip file + shutil.make_archive(os.path.join(d.getVar('TOPDIR'), 'CCSS_' + d.getVar('IMAGE_BASENAME') + '-' + d.getVar('DATETIME')), 'zip', ccss_tmp_dir) + finally: + # Remove temporary dir + bb.utils.remove(ccss_tmp_dir, recurse=True) +} + +# Don't execute do_ccss_generate_sbom() unless explicitly enabled for a given +# image +python __anonymous() { + if d.getVar('CCSS_ENABLE') != '1': + d.setVarFlag('do_ccss_generate_sbom', 'noexec', '1') +} + +addtask do_ccss_generate_sbom after do_image before do_image_complete + +# Since do_ccss_generate_sbom() uses the DATETIME variable to create the +# metadata JSON, said variable will expand to different values when the +# function is parsed in different stages of the build (first by the bitbake +# cooker, and then by a worker). This causes metadata/hash mismatch errors due +# to non-deterministic content, so exclude DATETIME from the hash calculation. +do_ccss_generate_sbom[vardepsexclude]="DATETIME" From d95abbbbe45c42420c68eb57df6d85678e01d7cf Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Thu, 9 Oct 2025 17:35:07 +0200 Subject: [PATCH 05/25] ccss.bbclass: enable SBOM generation for all images by default Let customers decide if they only want to generate SBOMs for a subset of their images, or none at all Signed-off-by: Gabriel Valcazar (cherry picked from commit b010285f785706635b6a765a529d6d4d0e087ddc) --- meta-digi-dey/classes/ccss.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-digi-dey/classes/ccss.bbclass b/meta-digi-dey/classes/ccss.bbclass index bebcacf51..01f786688 100644 --- a/meta-digi-dey/classes/ccss.bbclass +++ b/meta-digi-dey/classes/ccss.bbclass @@ -15,7 +15,7 @@ inherit vigiles CCSS_API_VERSION = "0.1" CCSS_IMAGE_TYPE ?= "dev" -CCSS_ENABLE ?= "0" +CCSS_ENABLE ?= "1" python do_ccss_generate_sbom() { import json From f5786c01e8f0b97bc24eee90c951cb92ba664038 Mon Sep 17 00:00:00 2001 From: Gonzalo Ruiz Date: Thu, 23 Oct 2025 12:20:27 +0200 Subject: [PATCH 06/25] mkproject: ignore meta-digi-arm dir when other layer is selected Default value of 'MKP_CONFIGPATH' points to a config path in the meta-digi/meta-digi-arm layer. When mkproject.sh is called with the '-m' argument, another layer is provided to build the project from. In this layer the conf/templates new structure must be respected, but it is likely it does not contain a meta-digi-arm directory on top. Keep the 'meta-digi-arm' directory in the config path by default, but remove it when a different layer is provided through an argument. Signed-off-by: Gonzalo Ruiz (cherry picked from commit 7888fe3b22de4db5e02e6a2dab723db797e924b8) --- sdk/mkproject.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/mkproject.sh b/sdk/mkproject.sh index 354f3996c..31a5460a9 100755 --- a/sdk/mkproject.sh +++ b/sdk/mkproject.sh @@ -180,7 +180,7 @@ while getopts "lp:m:" c; do case "${c}" in l) MKP_LIST_PLATFORMS="y";; p) MKP_PLATFORM="${OPTARG}";; - m) MKP_CONFIGPATH="${MKP_SCRIPTPATH}/sources/${OPTARG}/meta-digi-arm/conf/templates";; + m) MKP_CONFIGPATH="${MKP_SCRIPTPATH}/sources/${OPTARG}/conf/templates";; esac done From 8625756a2b827e3bc42c823eaa1df01dc7c88396 Mon Sep 17 00:00:00 2001 From: Javier Viguera Date: Fri, 21 Nov 2025 12:03:31 +0100 Subject: [PATCH 07/25] dey: update libgpiod preferred version Version 1.6.4 is no longer available, as meta-openembedded updated it to version 1.6.5. Update our preferred version using a wildcard as our libdigiapix depends on the 1.6.x series. Signed-off-by: Javier Viguera (cherry picked from commit 06175c3c26fd32fc137c2af62593f3d5c43dcf99) --- meta-digi-dey/conf/distro/dey.conf | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/meta-digi-dey/conf/distro/dey.conf b/meta-digi-dey/conf/distro/dey.conf index fd7399dee..53a6fb3cc 100644 --- a/meta-digi-dey/conf/distro/dey.conf +++ b/meta-digi-dey/conf/distro/dey.conf @@ -59,11 +59,9 @@ FEATURE_PACKAGES_dey-wireless = "packagegroup-dey-wireless" # 5.72 version should be used, which is provided by the poky layer. PREFERRED_VERSION_bluez5 ?= "5.72" -# Latest version of libgpiod (2.1.1) breaks API compatibility with previously -# used version 1.6.3, causing libdigiapix compilation errors. Until we port -# libdigiapix to 2.1.1, use 1.6.4 instead, which is also available in poky to -# ensure compatibility with the old API. -PREFERRED_VERSION_libgpiod ?= "1.6.4" +# libdigiapix is not yet compatible with libgpiod 2.x, so until we do the +# porting, use version 1.6.x (still provided by meta-openembedded) +PREFERRED_VERSION_libgpiod ?= "1.6.%" # Starting in wpewebkit 2.46.1, our ConnectCore demo is broken due to clicks # not being registered in the demo's main area. This doesn't happen in 2.44.4, From bc1d97cd3b67db2bab524cfaad7e7d5eb21647ff Mon Sep 17 00:00:00 2001 From: Javier Viguera Date: Thu, 27 Nov 2025 11:52:02 +0100 Subject: [PATCH 08/25] flutter-example: fix version dependendy Last update of the flutter engine broke the example app. Fix the version dependency. Signed-off-by: Javier Viguera --- ...finite_list-relax-version-dependency.patch | 22 +++++++++++++++++++ .../flutter-samples-veggieseasons_%.bbappend | 1 + 2 files changed, 23 insertions(+) create mode 100644 meta-digi-dey/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/files/0001-infinite_list-relax-version-dependency.patch diff --git a/meta-digi-dey/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/files/0001-infinite_list-relax-version-dependency.patch b/meta-digi-dey/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/files/0001-infinite_list-relax-version-dependency.patch new file mode 100644 index 000000000..4f44d8456 --- /dev/null +++ b/meta-digi-dey/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/files/0001-infinite_list-relax-version-dependency.patch @@ -0,0 +1,22 @@ +From: Javier Viguera +Date: Thu, 27 Nov 2025 11:44:35 +0100 +Subject: [PATCH] infinite_list: relax version dependency + +Signed-off-by: Javier Viguera +--- + infinite_list/pubspec.yaml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/infinite_list/pubspec.yaml b/infinite_list/pubspec.yaml +index e439b822fd0a..fc6b8319916c 100644 +--- a/infinite_list/pubspec.yaml ++++ b/infinite_list/pubspec.yaml +@@ -12,7 +12,7 @@ dependencies: + flutter: + sdk: flutter + cupertino_icons: ^1.0.2 +- meta: 1.16.0 ++ meta: ^1.16.0 + provider: ^6.0.2 + window_size: + git: diff --git a/meta-digi-dey/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-veggieseasons_%.bbappend b/meta-digi-dey/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-veggieseasons_%.bbappend index 090e8d716..96af4e176 100644 --- a/meta-digi-dey/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-veggieseasons_%.bbappend +++ b/meta-digi-dey/dynamic-layers/flutter-apps-layer/recipes-graphics/flutter-apps/first-party/flutter-samples-veggieseasons_%.bbappend @@ -3,6 +3,7 @@ FILESEXTRAPATHS:prepend:dey := "${THISDIR}/files:" SRC_URI:append = " \ + file://0001-infinite_list-relax-version-dependency.patch \ file://flutter-demo-init \ file://flutter-demo-init.service \ " From cf27d3e201dc0ef17218bfe6e4c313adcda36cae Mon Sep 17 00:00:00 2001 From: Isaac Hermida Date: Tue, 2 Dec 2025 12:27:49 +0100 Subject: [PATCH 09/25] bluetooth-init: get the BT MAC address from the DT node Retrieve the Bluetooth MAC address from the device tree (DT) node rather than from the environment. U-Boot will populate this address by default, but it can be overridden with a custom MAC address specified directly in the DT, which then takes priority. Signed-off-by: Isaac Hermida --- .../bluez/bluez5-init/ccimx9/bluetooth-init | 4 +++- .../bluez/bluez5-init/ccmp1/bluetooth-init | 4 +++- .../bluez/bluez5-init/ccmp2/bluetooth-init | 4 +++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccimx9/bluetooth-init b/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccimx9/bluetooth-init index e2ea10d99..1834dd70d 100644 --- a/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccimx9/bluetooth-init +++ b/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccimx9/bluetooth-init @@ -33,7 +33,9 @@ power() { set_btaddr() { hciconfig ${HCI_IFACE} up sleep 0.2 - bt_addr=$(echo "$(fw_printenv -n btaddr)" | awk -F ":" '{ for(i=NF;i>=1;i--) printf "0x%s ", $i }') + bt_addr=$(hexdump -v -e '1/1 "%02X "' /proc/device-tree/bluetooth/mac-address \ + | awk '{ for(i=NF; i>0; i--) printf "0x%s ", $i }' \ + | sed 's/ $//') hcitool -i ${HCI_IFACE} cmd 0x3f 0x0022 0xfe 0x06 ${bt_addr} hciconfig ${HCI_IFACE} down sleep 0.2 diff --git a/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccmp1/bluetooth-init b/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccmp1/bluetooth-init index 2f9c940e4..cb197c4ed 100644 --- a/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccmp1/bluetooth-init +++ b/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccmp1/bluetooth-init @@ -43,7 +43,9 @@ bt_power() { set_btaddr() { hciconfig hci0 up sleep 0.2 - bt_addr=$(echo "$(fw_printenv -n btaddr)" | awk -F ":" '{ for(i=NF;i>=1;i--) printf "0x%s ", $i }') + bt_addr=$(hexdump -v -e '1/1 "%02X "' /proc/device-tree/bluetooth/mac-address \ + | awk '{ for(i=NF; i>0; i--) printf "0x%s ", $i }' \ + | sed 's/ $//') hcitool -i hci0 cmd 0x3f 0x0001 ${bt_addr} hciconfig hci0 down sleep 0.2 diff --git a/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccmp2/bluetooth-init b/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccmp2/bluetooth-init index 0a9eaeefa..f1fbbb907 100644 --- a/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccmp2/bluetooth-init +++ b/meta-digi-dey/recipes-connectivity/bluez/bluez5-init/ccmp2/bluetooth-init @@ -32,7 +32,9 @@ bt_power() { set_btaddr() { hciconfig hci0 up sleep 0.2 - bt_addr=$(echo "$(fw_printenv -n btaddr)" | awk -F ":" '{ for(i=NF;i>=1;i--) printf "0x%s ", $i }') + bt_addr=$(hexdump -v -e '1/1 "%02X "' /proc/device-tree/bluetooth/mac-address \ + | awk '{ for(i=NF; i>0; i--) printf "0x%s ", $i }' \ + | sed 's/ $//') hcitool -i hci0 cmd 0x3f 0x0001 ${bt_addr} hciconfig hci0 down sleep 0.2 From 8f7ece342d5238d9097999435c519c27b1ed9a28 Mon Sep 17 00:00:00 2001 From: Isaac Hermida Date: Fri, 5 Dec 2025 13:25:45 +0100 Subject: [PATCH 10/25] linux-dey: ccimx95: add temporary patch to support early prototypes As the HWID support is not implemented yet, is needed to fill the wireless information in the DT structure to have Wi-Fi and Bluetooth working. This is just a temporal patch for initial prototypes. Signed-off-by: Isaac Hermida --- ...rototypes-enable-wireless-interfaces.patch | 48 +++++++++++++++++++ .../recipes-kernel/linux/linux-dey_6.6.bb | 4 ++ 2 files changed, 52 insertions(+) create mode 100644 meta-digi-arm/recipes-kernel/linux/linux-dey/ccimx95/0001-CC95-early-prototypes-enable-wireless-interfaces.patch diff --git a/meta-digi-arm/recipes-kernel/linux/linux-dey/ccimx95/0001-CC95-early-prototypes-enable-wireless-interfaces.patch b/meta-digi-arm/recipes-kernel/linux/linux-dey/ccimx95/0001-CC95-early-prototypes-enable-wireless-interfaces.patch new file mode 100644 index 000000000..07658e875 --- /dev/null +++ b/meta-digi-arm/recipes-kernel/linux/linux-dey/ccimx95/0001-CC95-early-prototypes-enable-wireless-interfaces.patch @@ -0,0 +1,48 @@ +From: Isaac Hermida +Date: Fri, 21 Nov 2025 10:12:53 +0100 +Subject: [PATCH] CC95: early prototypes: enable wireless interfaces + +As the HWID is not completed yet, is needed to fill that info manually. +This is just temporal for the initial prototypes. +Additionally, in U-Boot, is needed to set the overlays as: + setenv overlays ccimx9_wifi.dtbo,ccimx9_bt.dtbo + +Signed-off-by: Isaac Hermida +--- + arch/arm64/boot/dts/digi/ccimx9_bt.dtso | 1 + + arch/arm64/boot/dts/digi/ccimx9_wifi.dtso | 3 +++ + 2 files changed, 4 insertions(+) + +diff --git a/arch/arm64/boot/dts/digi/ccimx9_bt.dtso b/arch/arm64/boot/dts/digi/ccimx9_bt.dtso +index 6b4ca6229706..e073fe328dea 100644 +--- a/arch/arm64/boot/dts/digi/ccimx9_bt.dtso ++++ b/arch/arm64/boot/dts/digi/ccimx9_bt.dtso +@@ -23,6 +23,7 @@ __overlay__ { + overlay-description = "SOM: Bluetooth"; + bluetooth { + /* U-Boot will fill in the MAC address here */ ++ mac-address = [00 04 f3 ff ff fc]; + }; + }; + }; +diff --git a/arch/arm64/boot/dts/digi/ccimx9_wifi.dtso b/arch/arm64/boot/dts/digi/ccimx9_wifi.dtso +index 7d73c4c7764d..80d766215ee0 100644 +--- a/arch/arm64/boot/dts/digi/ccimx9_wifi.dtso ++++ b/arch/arm64/boot/dts/digi/ccimx9_wifi.dtso +@@ -25,6 +25,7 @@ __overlay__ { + overlay-description = "SOM: Wi-Fi"; + wireless { + /* U-Boot will fill in the MAC address here */ ++ mac-address = [00 04 f3 ff ff fb]; + }; + }; + }; +@@ -42,6 +43,8 @@ __overlay__ { + bus-width = <4>; + non-removable; + wakeup-source; ++ // Workaround: limit max freq to 100MHz ++ max-frequency = <100000000>; + status = "okay"; + }; + }; diff --git a/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb b/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb index cb3491fe0..586f8b079 100644 --- a/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb +++ b/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb @@ -26,6 +26,10 @@ SRC_URI:append:ccmp25 = " \ ${@oe.utils.conditional('TRUSTFENCE_ENABLED', '1' , 'file://0001-ARM64-dts-ccmp25-add-signed-firmware-support-for-RPR.patch', '', d)} \ " +SRC_URI:append:ccimx95 = " \ + file://0001-CC95-early-prototypes-enable-wireless-interfaces.patch \ +" + # Define RT config fragments per machine RT_CONFIG_FRAGS:use-nxp-bsp = " ${WORKDIR}/fragment-nxp-rt.config" RT_CONFIG_FRAGS:stm32mpcommon = " \ From 08637debae3b9453f10e43d6837b6cee6e3ddf0e Mon Sep 17 00:00:00 2001 From: Gonzalo Ruiz Date: Thu, 4 Dec 2025 16:25:32 +0100 Subject: [PATCH 11/25] meta-digi-arm: ccmp25: add USB recovery artifacts to the ZIP installer Distribute all the required bootloader artifacts required for USB recovery as part of the ZIP installer. That way, every pre-compiled set of images is enough for starting development. Signed-off-by: Gonzalo Ruiz --- meta-digi-arm/conf/machine/ccmp25-dvk.conf | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/meta-digi-arm/conf/machine/ccmp25-dvk.conf b/meta-digi-arm/conf/machine/ccmp25-dvk.conf index 8bdf6f5f1..c3aa561af 100644 --- a/meta-digi-arm/conf/machine/ccmp25-dvk.conf +++ b/meta-digi-arm/conf/machine/ccmp25-dvk.conf @@ -134,14 +134,23 @@ ST_USERFS = "0" # Boot artifacts to be copied from the deploy dir to the installer ZIP BOOTABLE_ARTIFACTS = " \ ${@oe.utils.ifelse(d.getVar('TRUSTFENCE_SIGN') == '1', \ - oe.utils.ifelse(d.getVar('TRUSTFENCE_ENCRYPT') == '0', 'tf-a-ccmp25-dvk-optee-emmc${SIGN_SUFFIX}.stm32', \ - 'tf-a-ccmp25-dvk-optee-emmc${ENCRYPT_SUFFIX}${SIGN_SUFFIX}.stm32'), \ - 'tf-a-ccmp25-dvk-optee-emmc.stm32')} \ + oe.utils.ifelse(d.getVar('TRUSTFENCE_ENCRYPT') == '0', 'tf-a-ccmp25-dvk-optee-emmc${SIGN_SUFFIX}.stm32 ' \ + 'tf-a-ccmp25-dvk-optee-usb${SIGN_SUFFIX}.stm32 ', \ + 'tf-a-ccmp25-dvk-optee-emmc${ENCRYPT_SUFFIX}${SIGN_SUFFIX}.stm32 ' \ + 'tf-a-ccmp25-dvk-optee-usb${ENCRYPT_SUFFIX}${SIGN_SUFFIX}.stm32 '), \ + 'tf-a-ccmp25-dvk-optee-emmc.stm32 ' \ + 'tf-a-ccmp25-dvk-optee-usb.stm32 ')} \ metadata-ccmp25-dvk.bin \ ${@oe.utils.ifelse(d.getVar('TRUSTFENCE_SIGN') == '1', \ - oe.utils.ifelse(d.getVar('TRUSTFENCE_ENCRYPT') == '0', 'fip-ccmp25-dvk-optee-emmc${SIGN_SUFFIX}.bin', \ - 'fip-ccmp25-dvk-optee-emmc${ENCRYPT_SUFFIX}${SIGN_SUFFIX}.bin'), \ - 'fip-ccmp25-dvk-optee-emmc.bin')} \ + oe.utils.ifelse(d.getVar('TRUSTFENCE_ENCRYPT') == '0', 'fip-ccmp25-dvk-optee-emmc${SIGN_SUFFIX}.bin ' \ + 'fip-ccmp25-dvk-optee-usb${SIGN_SUFFIX}.bin ' \ + 'fip-ccmp25-dvk-ddr-optee-usb${SIGN_SUFFIX}.bin ', \ + 'fip-ccmp25-dvk-optee-emmc${ENCRYPT_SUFFIX}${SIGN_SUFFIX}.bin ' \ + 'fip-ccmp25-dvk-optee-usb${ENCRYPT_SUFFIX}${SIGN_SUFFIX}.bin ' \ + 'fip-ccmp25-dvk-ddr-optee-usb${ENCRYPT_SUFFIX}${SIGN_SUFFIX}.bin '), \ + 'fip-ccmp25-dvk-optee-emmc.bin ' \ + 'fip-ccmp25-dvk-optee-usb.bin ' \ + 'fip-ccmp25-dvk-ddr-optee-usb.bin ')} \ " # Per-machine DISTRO_FEATURES customization From 98c3e6427b06a378e32076498e4962f55c6a42e6 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 3 Dec 2025 09:07:22 +0100 Subject: [PATCH 12/25] trustfence: make co-processor secure firmware optional Introduce a configurable variable to enable/disable secure co-processor firmware when TrustFence is enabled. https://onedigi.atlassian.net/browse/DEL-9813 Signed-off-by: Arturo Buzarra --- .../recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend | 4 ++-- meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb | 2 +- meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb | 2 +- meta-digi-dey/classes/trustfence.bbclass | 3 +++ 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend b/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend index adef75396..32e0ec3c3 100644 --- a/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend +++ b/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend @@ -21,8 +21,8 @@ SRC_URI = " \ " SRC_URI:append:ccmp25 = " \ - ${@oe.utils.conditional('TRUSTFENCE_ENABLED', '1' , 'file://0001-ARM-dts-ccmp25-add-signed-firmware-support-for-RPROC.patch', '', d)} \ + ${@oe.utils.conditional('TRUSTFENCE_COPRO_ENABLED', '1' , 'file://0001-ARM-dts-ccmp25-add-signed-firmware-support-for-RPROC.patch', '', d)} \ " # Enable remoteproc OTP public key verification for signed firmware support -EXTRA_OEMAKE:append:ccmp25 = " ${@oe.utils.conditional('TRUSTFENCE_ENABLED', '1', 'CFG_REMOTEPROC_PUB_KEY_VERIFY=y', '', d)}" +EXTRA_OEMAKE:append:ccmp25 = " ${@oe.utils.conditional('TRUSTFENCE_COPRO_ENABLED', '1', 'CFG_REMOTEPROC_PUB_KEY_VERIFY=y', '', d)}" diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb index 705c23b4c..028217fb6 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb @@ -14,7 +14,7 @@ SRC_URI += " \ " SRC_URI:append:ccmp25 = " \ - ${@oe.utils.conditional('TRUSTFENCE_ENABLED', '1' , 'file://0001-ARM-dts-ccmp25-add-signed-firmware-support-for-RPROC.patch', '', d)} \ + ${@oe.utils.conditional('TRUSTFENCE_COPRO_ENABLED', '1' , 'file://0001-ARM-dts-ccmp25-add-signed-firmware-support-for-RPROC.patch', '', d)} \ " install_helper_files() { diff --git a/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb b/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb index 586f8b079..eaf594b4e 100644 --- a/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb +++ b/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb @@ -23,7 +23,7 @@ SRC_URI:append = " \ " SRC_URI:append:ccmp25 = " \ - ${@oe.utils.conditional('TRUSTFENCE_ENABLED', '1' , 'file://0001-ARM64-dts-ccmp25-add-signed-firmware-support-for-RPR.patch', '', d)} \ + ${@oe.utils.conditional('TRUSTFENCE_COPRO_ENABLED', '1' , 'file://0001-ARM64-dts-ccmp25-add-signed-firmware-support-for-RPR.patch', '', d)} \ " SRC_URI:append:ccimx95 = " \ diff --git a/meta-digi-dey/classes/trustfence.bbclass b/meta-digi-dey/classes/trustfence.bbclass index a86228ac3..8683b6da9 100644 --- a/meta-digi-dey/classes/trustfence.bbclass +++ b/meta-digi-dey/classes/trustfence.bbclass @@ -45,6 +45,9 @@ TRUSTFENCE_ENCRYPT_ROOTFS:ccmp1 ?= "0" TRUSTFENCE_ENCRYPT_ROOTFS:ccmp2 ?= "0" TRUSTFENCE_FILE_BASED_ENCRYPT ?= "${TF_FILE_BASED_ENCRYPT}" +# Co-processor settings +TRUSTFENCE_COPRO_ENABLED ?= "1" + # Read-only rootfs TRUSTFENCE_READ_ONLY_ROOTFS ?= "${@bb.utils.contains("IMAGE_FEATURES", "read-only-rootfs", "1", "0", d)}" From 39c24dcfb564b351db3c89be8a3f34fb0de0c490 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 3 Dec 2025 14:20:50 +0100 Subject: [PATCH 13/25] trustfence: fix SWUpdate private key selection for STM platforms Commit b1800736af5ad1ac24c70d6db144f9b176dbca29 ("trustfence: update support to STM platforms and integrate CCMP2") renamed several variables like FIP_SIGN_KEY to SIGN_KEY, but missed updating the `SWUPDATE_PRIVATE_KEY_TEMPLATE` assignment. This broke .swu signing on STM targets. Signed-off-by: Arturo Buzarra --- meta-digi-dey/classes/trustfence.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-digi-dey/classes/trustfence.bbclass b/meta-digi-dey/classes/trustfence.bbclass index 8683b6da9..cc8ccd2f5 100644 --- a/meta-digi-dey/classes/trustfence.bbclass +++ b/meta-digi-dey/classes/trustfence.bbclass @@ -291,7 +291,7 @@ python () { # Set the key password. d.setVar("SWUPDATE_PASSWORD_FILE", keys_path + "/keys/key_pass.txt") elif (d.getVar("DEY_SOC_VENDOR") == "STM"): - d.setVar("SWUPDATE_PRIVATE_KEY_TEMPLATE", d.getVar("FIP_SIGN_KEY")) + d.setVar("SWUPDATE_PRIVATE_KEY_TEMPLATE", d.getVar("SIGN_KEY")) # Set the key password. if (d.getVar("DIGI_SOM") == "ccmp15"): d.setVar("SWUPDATE_PASSWORD_FILE", keys_path + "/keys/key_pass.txt") From 13556606e0d4cb49e6fe531a81212e1ade652b05 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 3 Dec 2025 09:14:10 +0100 Subject: [PATCH 14/25] swupdate: stm: fix TF-A/FIP artifact names in .swu when TrustFence is enabled Correct the bootloader artifact names (TF-A and FIP) for CCMP1/CCMP2 during .swu generation with TrustFence enabled. Signed-off-by: Arturo Buzarra --- meta-digi-arm/conf/machine/include/ccmp1.inc | 3 --- meta-digi-dey/classes/dey-swupdate-common.bbclass | 9 +++++---- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/meta-digi-arm/conf/machine/include/ccmp1.inc b/meta-digi-arm/conf/machine/include/ccmp1.inc index 05c75ca49..36f673a81 100644 --- a/meta-digi-arm/conf/machine/include/ccmp1.inc +++ b/meta-digi-arm/conf/machine/include/ccmp1.inc @@ -8,9 +8,6 @@ include conf/machine/include/digi-defaults.inc DIGI_FAMILY = "ccmp1" -# Platform T-FA settings -TFA_SIGN_SUFFIX ?= "${@bb.utils.contains('TRUSTFENCE_SIGN', '1', '_signed', '', d)}" - # ========================================================================= # U-Boot # ========================================================================= diff --git a/meta-digi-dey/classes/dey-swupdate-common.bbclass b/meta-digi-dey/classes/dey-swupdate-common.bbclass index 32b7531f3..9d7627cb2 100644 --- a/meta-digi-dey/classes/dey-swupdate-common.bbclass +++ b/meta-digi-dey/classes/dey-swupdate-common.bbclass @@ -111,14 +111,15 @@ SWUPDATE_UBOOT_PREFIX_TFA ?= "tf-a" SWUPDATE_UBOOT_EXT ?= ".${UBOOT_SUFFIX}" SWUPDATE_UBOOT_EXT_TFA ?= ".stm32" +SWUPDATE_UBOOT_MEM_VARIANT ?= "-512MB" SWUPDATE_UBOOT_NAME ?= "${SWUPDATE_UBOOT_PREFIX}-${MACHINE}${SWUPDATE_UBOOT_EXT}" SWUPDATE_UBOOT_NAME:ccimx6sbc ?= "${SWUPDATE_UBOOT_PREFIX}-ccimx6qsbc${SWUPDATE_UBOOT_EXT}" -SWUPDATE_UBOOT_NAME:ccmp1 ?= "${SWUPDATE_UBOOT_PREFIX}-${MACHINE}-nand${FIP_SIGN_SUFFIX}${SWUPDATE_UBOOT_EXT}" -SWUPDATE_UBOOT_NAME:ccmp25 ?= "${SWUPDATE_UBOOT_PREFIX}-${MACHINE}-optee-emmc${FIP_SIGN_SUFFIX}${SWUPDATE_UBOOT_EXT}" +SWUPDATE_UBOOT_NAME:ccmp1 ?= "${SWUPDATE_UBOOT_PREFIX}-${MACHINE}${SWUPDATE_UBOOT_MEM_VARIANT}-optee-nand${FIP_ENCRYPT_SUFFIX}${FIP_SIGN_SUFFIX}${SWUPDATE_UBOOT_EXT}" +SWUPDATE_UBOOT_NAME:ccmp25 ?= "${SWUPDATE_UBOOT_PREFIX}-${MACHINE}-optee-emmc${FIP_ENCRYPT_SUFFIX}${FIP_SIGN_SUFFIX}${SWUPDATE_UBOOT_EXT}" SWUPDATE_UBOOT_NAME_TFA ?= "" -SWUPDATE_UBOOT_NAME_TFA:ccmp1 ?= "${SWUPDATE_UBOOT_PREFIX_TFA}-${MACHINE}-nand${SWUPDATE_UBOOT_EXT_TFA}${TFA_SIGN_SUFFIX}" -SWUPDATE_UBOOT_NAME_TFA:ccmp25 ?= "${SWUPDATE_UBOOT_PREFIX_TFA}-${MACHINE}-optee-emmc${SWUPDATE_UBOOT_EXT_TFA}" +SWUPDATE_UBOOT_NAME_TFA:ccmp1 ?= "${SWUPDATE_UBOOT_PREFIX_TFA}-${MACHINE}${SWUPDATE_UBOOT_MEM_VARIANT}-optee-nand${TF_A_ENCRYPT_SUFFIX}${TF_A_SIGN_SUFFIX}${SWUPDATE_UBOOT_EXT_TFA}" +SWUPDATE_UBOOT_NAME_TFA:ccmp25 ?= "${SWUPDATE_UBOOT_PREFIX_TFA}-${MACHINE}-optee-emmc${TF_A_ENCRYPT_SUFFIX}${TF_A_SIGN_SUFFIX}${SWUPDATE_UBOOT_EXT_TFA}" SWUPDATE_UBOOT_OFFSET ?= "${BOOTLOADER_SEEK_BOOTPART}" From 6b099b1c672510af08df97aacda04aae9343d09b Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Tue, 9 Dec 2025 12:51:15 +0100 Subject: [PATCH 15/25] swupdate: mmc uboot: skip appending encryption key on CCMP2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Do not append the encryption key to the bootloader on STM platforms, it’s not required and triggers an installation error. Signed-off-by: Arturo Buzarra --- .../recipes-digi/swu-images/files/swupdate_uboot_mmc.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh b/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh index 032922afc..8904c0ebf 100755 --- a/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh +++ b/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh @@ -1,7 +1,7 @@ #!/bin/sh #=============================================================================== # -# Copyright (C) 2022-2024 by Digi International Inc. +# Copyright (C) 2022-2025 by Digi International Inc. # All rights reserved. # # This program is free software; you can redistribute it and/or modify it @@ -257,8 +257,8 @@ write_artifact_emmc () } # If U-Boot is encrypted, the DEK key blob needs to be extracted from existing U-Boot -# and appended to the new U-Boot before writing it. -if [ "${UBOOT_ENC}" = "enc" ]; then +# and appended to the new U-Boot before writing it for NXP platforms. +if [ "${UBOOT_ENC}" = "enc" ] && [[ "${PLATFORM}" != ccmp2* ]]; then append_dek fi # Write TFA. From bd7e2f40ec7594905aab7f83b515a37492356c21 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Tue, 9 Dec 2025 12:56:09 +0100 Subject: [PATCH 16/25] swupdate: mmc uboot: improve MMC write flow Add a check to avoid disabling read-only protection on partitions that don't support it, and refine logging to print the specific bootloader partition being flashed (instead of the generic "U-Boot" label). Signed-off-by: Arturo Buzarra --- .../swu-images/files/swupdate_uboot_mmc.sh | 25 +++++++++++++------ 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh b/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh index 8904c0ebf..91b1155f6 100755 --- a/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh +++ b/meta-digi-dey/recipes-digi/swu-images/files/swupdate_uboot_mmc.sh @@ -25,6 +25,7 @@ UBOOT_BLOCK_REDUNDANT="mmcblk0boot1" UBOOT_MMC_DEV_MAIN="/dev/${UBOOT_BLOCK_MAIN}" UBOOT_MMC_DUMP="/tmp/u-boot-dump.hex" UBOOT_ENCRYPTED_DEK="/tmp/u-boot-encrypted-with-dek.imx" +UBOOT_PARTNAME="U-Boot" DEK_FILE="/tmp/dek.bin" DEK_KEY_SIZE="32" @@ -241,19 +242,28 @@ write_artifact_emmc () { local BLOCK_TO_WRITE="$1" local FILE_TO_WRITE="$2" + local PARTNAME_TO_WRITE="$3" + local FORCE_RO_PATH="/sys/block/${BLOCK_TO_WRITE}/force_ro" # Enable write access in the partition. - echo 0 > "/sys/block/${BLOCK_TO_WRITE}/force_ro" + if [ -e "${FORCE_RO_PATH}" ]; then + echo 0 > "${FORCE_RO_PATH}" + fi + # Write the file into the eMMC. dd if="${FILE_TO_WRITE}" of="/dev/${BLOCK_TO_WRITE}" seek="${UBOOT_SEEK_KB}" bs=1K 2>/dev/null local rc=$? + # Disable write access in partition. - echo 1 > "/sys/block/${BLOCK_TO_WRITE}/force_ro" + if [ -e "${FORCE_RO_PATH}" ]; then + echo 1 > "${FORCE_RO_PATH}" + fi + # Check update operation result. if [ "${rc}" -ne 0 ]; then exit_error "## ERROR: failed to write file ${FILE_TO_WRITE} to /dev/${BLOCK_TO_WRITE}" "${rc}" fi - echo "U-Boot successfully writen to /dev/${BLOCK_TO_WRITE}" + echo "${PARTNAME_TO_WRITE} successfully writen to /dev/${BLOCK_TO_WRITE}" } # If U-Boot is encrypted, the DEK key blob needs to be extracted from existing U-Boot @@ -264,19 +274,20 @@ fi # Write TFA. if expr "${PLATFORM}" : "ccmp2.*" >/dev/null; then # Write TFA artifact into eMMC BOOT1 and BOOT2 partitions. - write_artifact_emmc ${UBOOT_BLOCK_MAIN} ${UBOOT_TFA_FILE} + write_artifact_emmc ${UBOOT_BLOCK_MAIN} ${UBOOT_TFA_FILE} "TF-A" if [ "${UBOOT_REDUNDANT}" = "redundant" ]; then - write_artifact_emmc ${UBOOT_BLOCK_REDUNDANT} ${UBOOT_TFA_FILE} + write_artifact_emmc ${UBOOT_BLOCK_REDUNDANT} ${UBOOT_TFA_FILE} "TF-A" fi # Redefine block devices to write FIP artifact into 'fip-a' and 'fip-b' partitions. UBOOT_BLOCK_MAIN="mmcblk0p3" UBOOT_BLOCK_REDUNDANT="mmcblk0p4" + UBOOT_PARTNAME="FIP" fi # Write U-Boot -write_artifact_emmc ${UBOOT_BLOCK_MAIN} ${UBOOT_FILE} +write_artifact_emmc ${UBOOT_BLOCK_MAIN} ${UBOOT_FILE} ${UBOOT_PARTNAME} # Check if redundant U-Boot update is requested. if [ "${UBOOT_REDUNDANT}" = "redundant" ]; then - write_artifact_emmc ${UBOOT_BLOCK_REDUNDANT} ${UBOOT_FILE} + write_artifact_emmc ${UBOOT_BLOCK_REDUNDANT} ${UBOOT_FILE} ${UBOOT_PARTNAME} fi # Clean intermediate artifacts. clean_artifacts From f82ea201539b24f951f9c0aed0f92f6b73f9bb4d Mon Sep 17 00:00:00 2001 From: Gonzalo Ruiz Date: Wed, 10 Dec 2025 10:13:22 +0100 Subject: [PATCH 17/25] installer: ccimx95: install dey-image-chromium by default Signed-off-by: Gonzalo Ruiz --- meta-digi-arm/conf/machine/ccimx95-dvk.conf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/meta-digi-arm/conf/machine/ccimx95-dvk.conf b/meta-digi-arm/conf/machine/ccimx95-dvk.conf index c7af2421b..e1196cd19 100644 --- a/meta-digi-arm/conf/machine/ccimx95-dvk.conf +++ b/meta-digi-arm/conf/machine/ccimx95-dvk.conf @@ -52,6 +52,9 @@ KERNEL_DEVICETREE ?= " \ " FIT_CONF_DEFAULT_DTB = "ccimx95-dvk.dtb" +# Default image for install scripts +DEFAULT_IMAGE_NAME ?= "dey-image-chromium" + # Boot artifacts to be copied from the deploy dir to the installer ZIP BOOTABLE_ARTIFACTS = " \ imx-boot##SIGNED##-ccimx95-dvk.bin \ From 619ca8b2a8d6be971cc5360366782516435ba4e6 Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Fri, 12 Dec 2025 11:49:14 +0100 Subject: [PATCH 18/25] Revert "cccs: ccimx6ul: drop exception for `data` partition and client certificates" If a target's DRM certificate is lost/erased before registering said target, the CCCS server will reject all connection attempts from the target. This can happen during development, as our installer scripts format the data partition where the certificate is stored by default (see commit c17af3fd4754). Since the ccimx6ul uses sysvinit, we respawn the cccsd daemon via inittab if process ends unexpectedly (see commit b154154a7ee8). When the server always rejects connections due to a missing certificate, the cccsd daemon is constantly respawning and terminating prematurely. Said daemon is very CPU-intensive during initialization, so this causes the overall system's performance to be hindered. For now, to avoid this situation, use the CCCS endpoint that doesn't require a certificate in order to ensure stable connections even if the data partition gets formatted. https://onedigi.atlassian.net/browse/DEL-9892 https://onedigi.atlassian.net/browse/DEL-9894 This reverts commit 4f8ed2d4348d9b2c08de43fb46490f9e304a5c88. Signed-off-by: Gabriel Valcazar --- meta-digi-dey/recipes-digi/cccs/cccs_git.bb | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/meta-digi-dey/recipes-digi/cccs/cccs_git.bb b/meta-digi-dey/recipes-digi/cccs/cccs_git.bb index 7e623890c..dc62ab2a0 100644 --- a/meta-digi-dey/recipes-digi/cccs/cccs_git.bb +++ b/meta-digi-dey/recipes-digi/cccs/cccs_git.bb @@ -87,6 +87,13 @@ do_install() { fi } +do_install:append:ccimx6ul() { + if [ -z "${CCCS_CONF_PATH}" ]; then + sed -i "/url = \"edp12.devicecloud.com\"/c\url = \"remotemanager.digi.com\"" ${D}${sysconfdir}/cccs.conf + sed -i "/client_cert_path = \"\/mnt\/data\/drm_cert.pem\"/c\client_cert_path = \"\/etc\/ssl\/certs\/drm_cert.pem\"" ${D}${sysconfdir}/cccs.conf + fi +} + pkg_postinst_ontarget:${PN}-daemon() { # If dualboot is enabled, change the CCCSD download path and set on the fly to yes on the first boot if [ "$(fw_printenv -n dualboot 2>/dev/null)" = "yes" ]; then From 21d9c4f17be9fa0a0abf2d9465f8d882bdf6c937 Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Fri, 12 Dec 2025 14:29:22 +0100 Subject: [PATCH 19/25] lvgl-demo: remove vestigial Wayland logic In platforms that support wayland/xwayland, dey-image-lvgl images have most weston/wayland packages removed from the filesystem, save for the main wayland package (because DISTRO_FEATURES still contains "wayland"). Because of this, the wait_for_wayland() function is called in lvgl-demo-init, but the wayland display never gets created, causing the function to time out after 20 seconds. Get rid of this check to have the lvgl-demo launch as soon as possible. While at it, get rid of other wayland-related logic, since we only use LVGL's drm or fbdev backends at the moment. Signed-off-by: Gabriel Valcazar --- .../lvgl/files/lvgl-demo-init | 27 +++---------------- .../recipes-graphics/lvgl/lvgl-demo_9.3.0.bb | 6 ----- 2 files changed, 3 insertions(+), 30 deletions(-) diff --git a/meta-digi-dey/recipes-graphics/lvgl/files/lvgl-demo-init b/meta-digi-dey/recipes-graphics/lvgl/files/lvgl-demo-init index e1ac75dd8..063ea537a 100644 --- a/meta-digi-dey/recipes-graphics/lvgl/files/lvgl-demo-init +++ b/meta-digi-dey/recipes-graphics/lvgl/files/lvgl-demo-init @@ -16,8 +16,6 @@ readonly DEMO_NAME="lvgl-demo" readonly DEMO_PATH="/usr/bin/${DEMO_NAME}" readonly DEMO_TITLE="LVGL Demo Application" -readonly DEMO_DISPLAY="##LVGL_DEMO_DISPLAY##" -readonly DEMO_ENV="##LVGL_DEMO_ENV##" readonly PID_FILE="/run/${DEMO_NAME}.pid" log() { @@ -54,21 +52,6 @@ check_is_running() { return 1 } -wait_for_wayland() { - local count=20 - local wayland_socket="/run/user/0/${DEMO_DISPLAY}" - - while [ ! -S "${wayland_socket}" ]; do - sleep 1 - count=$((count-1)) - if [ "${count}" = 0 ]; then - return 1 - fi - done - sleep 1 - return 0 -} - stop() { check_is_running || return @@ -89,15 +72,11 @@ stop() { start() { check_is_running && { log warning "start: ${DEMO_NAME} ALREADY running"; exit 0; } - if [ -d "/usr/share/wayland" ]; then - wait_for_wayland - else - # Disable the cursor when displaying at full screen on fbdev - echo "0" > /sys/class/graphics/fbcon/cursor_blink - fi + # Disable the cursor when displaying at full screen on fbdev + echo "0" > /sys/class/graphics/fbcon/cursor_blink # Launch demo - env ${DEMO_ENV} ${DEMO_PATH} >/dev/null 2>&1 & + env ${DEMO_PATH} >/dev/null 2>&1 & if [ $? -eq 0 ]; then echo $! > ${PID_FILE} diff --git a/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb b/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb index 347bb929a..2d0f97dae 100644 --- a/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb +++ b/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb @@ -42,9 +42,6 @@ inherit cmake systemd update-rc.d S = "${WORKDIR}/git" -LVGL_DEMO_ENV ?= "DISPLAY=:0.0 XDG_RUNTIME_DIR=/run/user/0 WAYLAND_DISPLAY=\$\{DEMO_DISPLAY\}" -LVGL_DEMO_ENV:ccimx6ul ?= "" - do_configure:prepend() { if [ "${LVGL_CONFIG_USE_SDL}" -eq 1 ] ; then # Add libsdl build dependency, SDL2_image has no cmake file @@ -66,9 +63,6 @@ do_install:append() { # Install wrapper bootscript to launch LVGL demo on boot install -d ${D}${sysconfdir}/init.d install -m 0755 ${WORKDIR}/lvgl-demo-init ${D}${sysconfdir}/lvgl-demo-init - sed -i -e "s@##LVGL_DEMO_DISPLAY##@${WAYLAND_DISPLAY}@g" \ - -e "s@##LVGL_DEMO_ENV##@${LVGL_DEMO_ENV}@g" \ - "${D}${sysconfdir}/lvgl-demo-init" ln -sf ${sysconfdir}/lvgl-demo-init ${D}${sysconfdir}/init.d/lvgl-demo-init } From 289a6e5e09cbefd69530cb1ea673a3b80e4963de Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Fri, 12 Dec 2025 14:38:57 +0100 Subject: [PATCH 20/25] lvgl: move lvgl-demo-init modifications to their corresponding recipe lv-conf.inc is a general configuration file, meant for any LVGL application, while lvgl-demo_9.3.0.bb is the recipe for our example demo. Make sure any modification made to the demo or its initscript is made in its corresponding recipe. This is cosmetic, no functional change. Signed-off-by: Gabriel Valcazar --- meta-digi-dey/recipes-graphics/lvgl/lv-conf.inc | 3 --- meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb | 3 +++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/meta-digi-dey/recipes-graphics/lvgl/lv-conf.inc b/meta-digi-dey/recipes-graphics/lvgl/lv-conf.inc index 3bc1db338..e2d90864e 100644 --- a/meta-digi-dey/recipes-graphics/lvgl/lv-conf.inc +++ b/meta-digi-dey/recipes-graphics/lvgl/lv-conf.inc @@ -99,7 +99,4 @@ do_configure:append() { \ -e "s|^([[:space:]]*#define LV_USE_LOTTIE[[:space:]]).*|\1${LVGL_CONFIG_USE_LOTTIE}|" \ -i "${S}/lv_conf.h" - sed -i -e 's,##LVGL_CONFIG_DRM_CARD##,${LVGL_CONFIG_DRM_CARD},g' \ - -i -e 's,##LVGL_CONFIG_FBDEV_DEVICE##,${LVGL_CONFIG_FBDEV_DEVICE},g' \ - -i ${WORKDIR}/lvgl-demo-init } diff --git a/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb b/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb index 2d0f97dae..06f9b1751 100644 --- a/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb +++ b/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb @@ -63,6 +63,9 @@ do_install:append() { # Install wrapper bootscript to launch LVGL demo on boot install -d ${D}${sysconfdir}/init.d install -m 0755 ${WORKDIR}/lvgl-demo-init ${D}${sysconfdir}/lvgl-demo-init + sed -i -e 's,##LVGL_CONFIG_DRM_CARD##,${LVGL_CONFIG_DRM_CARD},g' \ + -i -e 's,##LVGL_CONFIG_FBDEV_DEVICE##,${LVGL_CONFIG_FBDEV_DEVICE},g' \ + -i ${D}${sysconfdir}/lvgl-demo-init ln -sf ${sysconfdir}/lvgl-demo-init ${D}${sysconfdir}/init.d/lvgl-demo-init } From 55d58ea814b0078fb17ce61ada9fb25aa36c4575 Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Fri, 12 Dec 2025 14:40:39 +0100 Subject: [PATCH 21/25] lvgl-demo: make HDMI the default display for ccimx6/ccimx6qp In these platforms, /dev/fb0 corresponds to the LVDS display, so change the demo's output framebuffer to /dev/fb3 to use the HDMI display instead. https://onedigi.atlassian.net/browse/DEL-9878 Signed-off-by: Gabriel Valcazar --- meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb b/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb index 06f9b1751..6cb730fb7 100644 --- a/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb +++ b/meta-digi-dey/recipes-graphics/lvgl/lvgl-demo_9.3.0.bb @@ -28,9 +28,11 @@ SRCREV_FORMAT = "demo_lvgl" EXTRA_OEMAKE = "DESTDIR=${D}" LVGL_CONFIG_DRM_CARD ?= "/dev/dri/card0" -LVGL_CONFIG_FBDEV_DEVICE ?= "/dev/fb0" # Change DRM card used for i.MX8-based platforms LVGL_CONFIG_DRM_CARD:mx8-generic-bsp = "/dev/dri/card1" +LVGL_CONFIG_FBDEV_DEVICE ?= "/dev/fb0" +# Change framebuffer used for the ccimx6/ccimx6qp (HDMI display) +LVGL_CONFIG_FBDEV_DEVICE:ccimx6 = "/dev/fb3" LVGL_CONFIG_LV_USE_LOG = "1" LVGL_CONFIG_LV_LOG_PRINTF = "1" LVGL_CONFIG_LV_MEM_SIZE = "(256 * 1024U)" From e8919d5fb4a4809477ffefbfc971b62a96c244d0 Mon Sep 17 00:00:00 2001 From: Gonzalo Ruiz Date: Fri, 12 Dec 2025 13:32:24 +0100 Subject: [PATCH 22/25] libdigiapix: ccimx95: update default macros for dey-examples https://onedigi.atlassian.net/browse/DEL-9832 Signed-off-by: Gonzalo Ruiz --- .../libdigiapix-git/ccimx95/libdigiapix.conf | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix-git/ccimx95/libdigiapix.conf b/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix-git/ccimx95/libdigiapix.conf index 85a568c15..1998d6809 100644 --- a/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix-git/ccimx95/libdigiapix.conf +++ b/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix-git/ccimx95/libdigiapix.conf @@ -19,20 +19,20 @@ USER_BUTTON2 = 43840000.gpio,23 [I2C] -# I2C-3 on MikroBus connector. +# I2C-3 on MikroBus connector J39. DEFAULT_I2C_BUS = 2 [SPI] -# LPSPI-8 on MikroBus connector J39. +# LPSPI-8 on MikroBus connector J38. DEFAULT_SPI = 0,0 [PWM] -# PWM0 channel 1 - LVDS backlight. -DEFAULT_PWM = 0,1 +# TPM3 channel 3 on MikroBus connector J39.1. +DEFAULT_PWM = 0,3 [ADC] -# ADC channel 0 - Pin J48-1. +# ADC channel 0 - Pin J44.3. DEFAULT_ADC = 0,0 From 18f823ebd10892d7a228eed5bd330161b7777f59 Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Mon, 15 Dec 2025 18:09:27 +0100 Subject: [PATCH 23/25] cccs: don't change default client_cert_path for the ccimx6ul Commit 619ca8b2a8d6 changed the ccimx6ul's default endpoint URL and client cert path in order to prevent performance issues if the client cert is erased before registering the device. In reality, the client cert path doesn't really matter after this change since the remotemanager.digi.com endpoint won't make use of it, and we now ensure that /mnt/data is writable; so we might as well keep using that path. Signed-off-by: Gabriel Valcazar --- meta-digi-dey/recipes-digi/cccs/cccs_git.bb | 1 - 1 file changed, 1 deletion(-) diff --git a/meta-digi-dey/recipes-digi/cccs/cccs_git.bb b/meta-digi-dey/recipes-digi/cccs/cccs_git.bb index dc62ab2a0..965d9a899 100644 --- a/meta-digi-dey/recipes-digi/cccs/cccs_git.bb +++ b/meta-digi-dey/recipes-digi/cccs/cccs_git.bb @@ -90,7 +90,6 @@ do_install() { do_install:append:ccimx6ul() { if [ -z "${CCCS_CONF_PATH}" ]; then sed -i "/url = \"edp12.devicecloud.com\"/c\url = \"remotemanager.digi.com\"" ${D}${sysconfdir}/cccs.conf - sed -i "/client_cert_path = \"\/mnt\/data\/drm_cert.pem\"/c\client_cert_path = \"\/etc\/ssl\/certs\/drm_cert.pem\"" ${D}${sysconfdir}/cccs.conf fi } From dde5a579cb25fa38b8e7abd89e13d9e2491cbde4 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Tue, 16 Dec 2025 12:11:23 +0100 Subject: [PATCH 24/25] README: dey-5.0-r3 release notes https://onedigi.atlassian.net/browse/DEL-9895 Signed-off-by: Arturo Buzarra --- README.md | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 55 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c1c5d7978..d578494ae 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,13 @@ OS versions: Software for the following hardware platforms is in production support: +## ConnectCore 95 +* ConnectCore 95 System-on-Module (SOM) + * [CC-WMX-B30F-B1](https://www.digi.com/products/models/cc-wmx-b30f-b1) + * [CC-MX-B30F-B1](https://www.digi.com/products/models/cc-mx-b30f-b1) +* ConnectCore 95 Development Kit (DVK) + * [CC-WMX95-KIT](https://www.digi.com/products/models/cc-wmx95-kit) ([Get Started](https://www.digi.com/resources/documentation/digidocs/embedded/dey/5.0/cc95/yocto-gs_index)) + ## ConnectCore MP25 * ConnectCore MP25 System-on-Module (SOM) * [CC-WST-J17D-NK](https://www.digi.com/products/models/cc-wst-j17d-nk) @@ -101,6 +108,32 @@ Software for the following hardware platforms is in production support: * [CC-SBP-WMX-JN58](https://www.digi.com/products/models/cc-sbp-wmx-jn58) * [CC-SBP-WMX-JN7A](https://www.digi.com/products/models/cc-sbp-wmx-jn7a) +## ConnectCore 6 Plus +* ConnectCore 6 Plus System-on-Module (SOM) + * [CC-WMX-KK8D-TN](https://www.digi.com/products/models/cc-wmx-kk8d-tn) +* ConnectCore 6 Plus professional development kit + * [CC-WMX6P-KIT](https://www.digi.com/products/models/cc-wmx6p-kit) ([Get Started](https://www.digi.com/resources/documentation/digidocs/embedded/dey/4.0/cc6plus/yocto-gs_index)) + +## ConnectCore 6 +* ConnectCore 6 System-on-Module (SOM) + * [CC-WMX-J97C-TN](https://www.digi.com/products/models/cc-wmx-j97c-tn) + * [CC-WMX-L96C-TE](https://www.digi.com/products/models/cc-wmx-l96c-te) + * [CC-WMX-L87C-TE](https://www.digi.com/products/models/cc-wmx-l87c-te) + * [CC-MX-L76C-Z1](https://www.digi.com/products/models/cc-mx-l76c-z1) + * [CC-MX-L86C-Z1](https://www.digi.com/products/models/cc-mx-l86c-z1) + * [CC-MX-L96C-Z1](https://www.digi.com/products/models/cc-mx-l96c-z1) + * [CC-WMX-L76C-TE](https://www.digi.com/products/models/cc-wmx-l76c-te) + * CC-WMX-K87C-FJA + * CC-WMX-K77C-TE + * CC-WMX-L97D-TN + * CC-WMX-J98C-FJA + * CC-WMX-J98C-FJA-1 +* ConnectCore 6 Jumpstart Development Kit (SBC with Connectore 6 module) + * [CC-WMX6-KIT](https://www.digi.com/products/models/cc-wmx6-kit) ([Get Started](https://www.digi.com/resources/documentation/digidocs/embedded/dey/4.0/cc6/yocto-gs_index)) + * [CC-SB-WMX-J97C-1](https://www.digi.com/products/models/cc-sb-wmx-j97c-1) + * [CC-SB-WMX-L87C-1](https://www.digi.com/products/models/cc-sb-wmx-l87c-1) + * [CC-SB-WMX-L76C-1](https://www.digi.com/products/models/cc-sb-wmx-l76c-1) + # Installation Digi Embedded Yocto is composed of a set of different Yocto layers that work in @@ -121,7 +154,28 @@ Documentation is available online at https://www.digi.com/resources/documentatio ## 5.0-r3 -TODO +* ST-based platforms + * Updated BSP + * Trusted Firmware ARM v2.10 (based on tag 'v2.10-stm32mp-r2' by ST) + * OP-TEE v4.0.0 (based on tag '4.0.0-stm32mp-r2' by ST) + * U-Boot v2023.10 (based on tag 'v2023.10-stm32mp-r2' by ST) + * Linux kernel v6.6.78 (based on tag 'v6.6-stm32mp-r2' by ST) + * Updated X-LINUX-AI software package (based on tag 'v6.1.1' by ST) + * Complete TrustFence support for ConnectCore MP25 + * Added support to sign/encrypt RPROC firmware for ConnectCore MP25 + * Added VREFBUF internal voltage reference for ADC on ConnectCore MP25 +* NXP-based platforms + * Added support for ConnectCore 6/6N and ConnectCore 6 Plus + * Added support for ConnectCore 95 (beta) + * Updated BSP + * Trusted Firmware ARM v2.10 (based on tag 'lf-6.6.52-2.2.1' by NXP) + * OP-TEE v4.4.0 (based on tag 'lf-6.6.52-2.2.1' by NXP) + * OEI v1.0 (based on tag 'lf-6.6.52-2.2.1' by NXP) + * System Manager 2025q2 (based on tag 'lf-6.6.52-2.2.1' by NXP) + * U-Boot v2024.04 (based on tag 'lf-6.6.52-2.2.1' by NXP) + * Linux kernel v6.6.52 (based on tag 'lf-6.6.52-2.2.1' by NXP) + * Added 'dey-image-chromium' image recipe for ConnectCore 95 + * Added WIC templates for sdcard image generation ## 5.0-r2 From 19a2ad15a83ac4c568591de0bb4b18877d45720d Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Tue, 16 Dec 2025 13:10:51 +0100 Subject: [PATCH 25/25] meta-digi: update revisions for dey-5.0-r3.1 Signed-off-by: Arturo Buzarra Signed-off-by: Javier Viguera --- .../recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.10.bbappend | 4 ++-- .../recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend | 4 ++-- meta-digi-arm/recipes-bsp/u-boot/u-boot-dey.inc | 2 +- meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb | 2 +- meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2024.04.bb | 2 +- .../recipes-digi/trustfence/trustfence-sign-tools.inc | 4 ++-- .../kernel-module-qualcomm/kernel-module-qualcomm.bb | 4 ++-- meta-digi-arm/recipes-kernel/linux/linux-dey.inc | 2 +- meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb | 4 ++-- meta-digi-dey/recipes-digi/cccs/cccs_git.bb | 4 ++-- meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc | 4 ++-- meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb | 4 ++-- 12 files changed, 20 insertions(+), 20 deletions(-) diff --git a/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.10.bbappend b/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.10.bbappend index 539664690..a1b34ea7c 100644 --- a/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.10.bbappend +++ b/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-bsp/trusted-firmware-a/tf-a-stm32mp_2.10.bbappend @@ -11,10 +11,10 @@ TFA_URI_GITHUB = "${DIGI_GITHUB_GIT}/arm-trusted-firmware.git;protocol=https" TFA_GIT_URI ?= "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${TFA_URI_STASH}', '${TFA_URI_GITHUB}', d)}" SRCBRANCH = "v2.10/stm32mp/maint" -SRCREV = "${AUTOREV}" +SRCREV = "20bd9eb9805aa1b0545844dba517038e2ac651d6" SRC_URI = " \ - ${TFA_GIT_URI};branch=${SRCBRANCH} \ + ${TFA_GIT_URI};nobranch=1 \ " # stm32mp15 = header-version 1 diff --git a/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend b/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend index 32e0ec3c3..41c3bf2eb 100644 --- a/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend +++ b/meta-digi-arm/dynamic-layers/stm-st-stm32mp/recipes-security/optee/optee-os-stm32mp_4.0.0.bbappend @@ -13,10 +13,10 @@ OPTEE_URI_GITHUB = "${DIGI_GITHUB_GIT}/optee_os.git;protocol=https" OPTEE_GIT_URI ?= "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${OPTEE_URI_STASH}', '${OPTEE_URI_GITHUB}', d)}" SRCBRANCH = "4.0.0/stm/maint" -SRCREV = "${AUTOREV}" +SRCREV = "b4059ef3049be5fe14ef5f62f3c1a49c9473c9d0" SRC_URI = " \ - ${OPTEE_GIT_URI};branch=${SRCBRANCH};name=os \ + ${OPTEE_GIT_URI};nobranch=1;name=os \ file://fonts.tar.gz;subdir=git;name=fonts \ " diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey.inc b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey.inc index c325cceb8..a24f9aa4a 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey.inc +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey.inc @@ -27,7 +27,7 @@ INSTALL_FW_UBOOT_SCRIPTS = " \ " SRC_URI = " \ - ${UBOOT_GIT_URI};branch=${SRCBRANCH} \ + ${UBOOT_GIT_URI};nobranch=1 \ file://boot.txt \ file://install_linux_fw_media.txt \ file://install_linux_fw_uuu.sh \ diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb index 028217fb6..27f23dfeb 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2023.10.bb @@ -7,7 +7,7 @@ DEPENDS += "flex-native bison-native" DEPENDS += "python3-setuptools-native" SRCBRANCH = "v2023.10/maint" -SRCREV = "${AUTOREV}" +SRCREV = "7b471dcdfab974aadca2a3866466d780682c4001" SRC_URI += " \ ${@oe.utils.conditional('TRUSTFENCE_SIGN_FIT_STM', '1', 'file://fit_signature.cfg', '', d)} \ diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2024.04.bb b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2024.04.bb index 0c45e416e..e9bc2f66f 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2024.04.bb +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2024.04.bb @@ -7,6 +7,6 @@ LIC_FILES_CHKSUM = "file://Licenses/README;md5=2ca5f2c35c8cc335f0a19756634782f1" DEPENDS += "flex-native bison-native" SRCBRANCH = "v2024.04/maint" -SRCREV = "${AUTOREV}" +SRCREV = "31c334d16837e271911778a0e908b1440361220e" COMPATIBLE_MACHINE = "(ccimx6$|ccimx6ul|ccimx8m|ccimx8x|ccimx9)" diff --git a/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools.inc b/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools.inc index d27e2b2e6..9eb786195 100644 --- a/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools.inc +++ b/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools.inc @@ -5,7 +5,7 @@ LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6" SRCBRANCH = "v2024.04/maint" -SRCREV = "${AUTOREV}" +SRCREV = "31c334d16837e271911778a0e908b1440361220e" S = "${WORKDIR}" @@ -15,7 +15,7 @@ UBOOT_URI_GITHUB = "${DIGI_GITHUB_GIT}/u-boot.git;protocol=https" UBOOT_GIT_URI ?= "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${UBOOT_URI_STASH}', '${UBOOT_URI_GITHUB}', d)}" SRC_URI = " \ - ${UBOOT_GIT_URI};branch=${SRCBRANCH} \ + ${UBOOT_GIT_URI};nobranch=1 \ file://trustfence-sign-artifact-nxp.sh \ file://trustfence-sign-artifact-stm.sh \ file://trustfence-gen-pki-stm.sh \ diff --git a/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb b/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb index 6b2061aeb..c7c13669c 100644 --- a/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb +++ b/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb @@ -9,12 +9,12 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/ISC;md5=f3b90e78ea0cffb20bf5cca PV = "v4.0.11.213X" SRCBRANCH = "qca65X4/dey-5.0/maint" -SRCREV = "${AUTOREV}" +SRCREV = "4e46ffda9d4af7c372f41b754a18080b86d63c47" QCOM_GIT_URI = "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${DIGI_MTK_GIT}/linux/qcacld-2.0.git;protocol=ssh', '${DIGI_GITHUB_GIT}/qcacld-2.0.git;protocol=https', d)}" SRC_URI = " \ - ${QCOM_GIT_URI};branch=${SRCBRANCH} \ + ${QCOM_GIT_URI};nobranch=1 \ " # Selects whether the interface is SDIO or PCI diff --git a/meta-digi-arm/recipes-kernel/linux/linux-dey.inc b/meta-digi-arm/recipes-kernel/linux/linux-dey.inc index 3ad4a7016..029cf1bcd 100644 --- a/meta-digi-arm/recipes-kernel/linux/linux-dey.inc +++ b/meta-digi-arm/recipes-kernel/linux/linux-dey.inc @@ -10,7 +10,7 @@ require ${@oe.utils.conditional('TRUSTFENCE_SIGN', '1', 'recipes-kernel/linux/li DEPENDS += "${@oe.utils.conditional('DEY_SOC_VENDOR', 'NXP', 'lzop-native', '', d)}" SRC_URI = " \ - ${LINUX_GIT_URI};branch=${SRCBRANCH} \ + ${LINUX_GIT_URI};nobranch=1 \ ${@oe.utils.conditional('KERNEL_DEFCONFIG', '', 'file://defconfig', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'virtualization', 'file://docker_conf.cfg', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'tsn', 'file://tsn_conf.cfg', '', d)} \ diff --git a/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb b/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb index eaf594b4e..7a29d697c 100644 --- a/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb +++ b/meta-digi-arm/recipes-kernel/linux/linux-dey_6.6.bb @@ -4,8 +4,8 @@ require recipes-kernel/linux/linux-dey.inc SRCBRANCH = "v6.6/nxp/dey-5.0/maint" SRCBRANCH:stm32mpcommon = "v6.6/stm/dey-5.0/maint" -SRCREV = "${AUTOREV}" -SRCREV:stm32mpcommon = "${AUTOREV}" +SRCREV = "a48c467e8b072b0a390bbb1398136cfd8e024710" +SRCREV:stm32mpcommon = "f582bf40eaa4f5cc3d64f23d54ac0c239e793e78" # Define RT patches per machine RT_FILES:use-nxp-bsp = " \ diff --git a/meta-digi-dey/recipes-digi/cccs/cccs_git.bb b/meta-digi-dey/recipes-digi/cccs/cccs_git.bb index 965d9a899..5c0bf1a48 100644 --- a/meta-digi-dey/recipes-digi/cccs/cccs_git.bb +++ b/meta-digi-dey/recipes-digi/cccs/cccs_git.bb @@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MPL-2.0;md5=815ca599c9df247a0c7 DEPENDS = "libconfuse libdigiapix openssl recovery-utils swupdate zlib json-c" SRCBRANCH = "dey-5.0/maint" -SRCREV = "${AUTOREV}" +SRCREV = "7f1a3c54fbc1536872fc87390104414e41b92f49" CC_STASH = "gitsm://git@stash.digi.com/cc/cc_dey.git;protocol=ssh" CC_GITHUB = "gitsm://github.com/digi-embedded/cc_dey.git;protocol=https" @@ -19,7 +19,7 @@ CCCS_DEVICE_TYPE ?= "${MACHINE}" CCCS_CONF_PATH ?= "" SRC_URI = " \ - ${CC_GIT_URI};branch=${SRCBRANCH} \ + ${CC_GIT_URI};nobranch=1 \ file://cccsd-init \ file://cccsd.service \ file://cccsd.tab \ diff --git a/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc b/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc index 852a67bee..09dc8d7f2 100644 --- a/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc +++ b/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc @@ -1,11 +1,11 @@ # Copyright (C) 2019-2025, Digi International Inc. SRCBRANCH = "dey-5.0/maint" -SRCREV = "${AUTOREV}" +SRCREV = "77e9124728937668cea2f0db48e20a31bc7e88eb" DEY_EXAMPLES_STASH = "${DIGI_MTK_GIT}/dey/dey-examples.git;protocol=ssh" DEY_EXAMPLES_GITHUB = "${DIGI_GITHUB_GIT}/dey-examples.git;protocol=https" DEY_EXAMPLES_GIT_URI ?= "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${DEY_EXAMPLES_STASH}', '${DEY_EXAMPLES_GITHUB}', d)}" -SRC_URI = "${DEY_EXAMPLES_GIT_URI};branch=${SRCBRANCH}" +SRC_URI = "${DEY_EXAMPLES_GIT_URI};nobranch=1" diff --git a/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb b/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb index 3e4f5b7a8..69f0558b6 100644 --- a/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb +++ b/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb @@ -7,7 +7,7 @@ LICENSE = "ISC" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/ISC;md5=f3b90e78ea0cffb20bf5cca7947a896d" SRCBRANCH ?= "dey-5.0/maint" -SRCREV = "${AUTOREV}" +SRCREV = "893ea8433c9e8d0a1a6d74c42c088ba6d9835fe7" LIBDIGIAPIX_URI_STASH = "${DIGI_MTK_GIT}/dey/libdigiapix.git;protocol=ssh" LIBDIGIAPIX_URI_GITHUB = "${DIGI_GITHUB_GIT}/libdigiapix.git;protocol=https" @@ -15,7 +15,7 @@ LIBDIGIAPIX_URI_GITHUB = "${DIGI_GITHUB_GIT}/libdigiapix.git;protocol=https" LIBDIGIAPIX_GIT_URI ?= "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${LIBDIGIAPIX_URI_STASH}', '${LIBDIGIAPIX_URI_GITHUB}', d)}" SRC_URI = " \ - ${LIBDIGIAPIX_GIT_URI};branch=${SRCBRANCH} \ + ${LIBDIGIAPIX_GIT_URI};nobranch=1 \ file://99-digiapix.rules \ file://libdigiapix.conf \ file://digiapix.sh \