# We have a conf and classes directory, add to BBPATH BBPATH .= ":${LAYERDIR}" # We have a packages directory, add to BBFILES BBFILES += "${LAYERDIR}/recipes-*/*/*.bb" BBFILES += "${LAYERDIR}/recipes-*/*/*.bbappend" BBFILE_COLLECTIONS += "xilinx" BBFILE_PATTERN_xilinx = "^${LAYERDIR}/" BBFILE_PRIORITY_xilinx = "5" LAYERSUMMARY_xilinx = "AMD Xilinx core layer (recipes, classes, \ kernel, U-Boot, ATF)" LAYERDESCRIPTION_xilinx = "Core meta-xilinx layer: recipe, class, and \ conf scaffolding shared across all AMD Xilinx boards, including \ kernel, U-Boot, ATF/TF-A, OP-TEE, gen-machine-conf integration, and \ the dynamic-layer glue." BBFILES_DYNAMIC += " \ meta-mingw:${LAYERDIR}/dynamic-layers/meta-mingw/recipes-*/*/*.bb \ meta-mingw:${LAYERDIR}/dynamic-layers/meta-mingw/recipes-*/*/*.bbappend \ openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/recipes-*/*/*.bb \ openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/recipes-*/*/*.bbappend \ meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bb \ meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bbappend \ multimedia-layer:${LAYERDIR}/dynamic-layers/multimedia-layer/recipes-*/*/*.bb \ multimedia-layer:${LAYERDIR}/dynamic-layers/multimedia-layer/recipes-*/*/*.bbappend \ networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/recipes-*/*/*.bb \ networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/recipes-*/*/*.bbappend \ openamp-layer:${LAYERDIR}/dynamic-layers/openamp-layer/recipes-*/*/*.bb \ openamp-layer:${LAYERDIR}/dynamic-layers/openamp-layer/recipes-*/*/*.bbappend \ virtualization-layer:${LAYERDIR}/dynamic-layers/virtualization-layer/recipes-*/*/*.bb \ virtualization-layer:${LAYERDIR}/dynamic-layers/virtualization-layer/recipes-*/*/*.bbappend \ core:${LAYERDIR}/dynamic-layers/oe-core/recipes-*/*/*.bb \ core:${LAYERDIR}/dynamic-layers/oe-core/recipes-*/*/*.bbappend \ " LAYERDEPENDS_xilinx = "core meta-arm" LAYERRECOMMENDS_xilinx = "openembedded-layer networking-layer" LAYERPATH_xilinx = "${LAYERDIR}" LAYERSERIES_COMPAT_xilinx = "wrynose" SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \ *->xrt \ *->zocl \ *->cairo \ *->libepoxy \ *->gstreamer1.0-plugins-base \ *->gtk+ \ *->gtk+3 \ *->libglu \ *->libsdl \ *->libsdl2 \ *->qemu \ *->xserver-xorg \ " XILINX_RELEASE_VERSION ??= "v2026.1" BUILDCFG_VARS:append = " XILINX_RELEASE_VERSION" XILINX_TFA_VERSION[v2024.2] = "2.10.0-xilinx-v2024.2%" XILINX_TFA_VERSION[v2025.1] = "2.12.0-xilinx-v2025.1%" XILINX_TFA_VERSION[v2025.2] = "2.12.0-xilinx-v2025.2%" XILINX_TFA_VERSION[v2026.1] = "2.14.0-xilinx-v2026.1%" PREFERRED_VERSION_trusted-firmware-a ?= "${@d.getVarFlag('XILINX_TFA_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" XILINX_OPTEE_CLIENT[v2025.1] = "4.5.0-xlnx-v2025.1%" XILINX_OPTEE_CLIENT[v2025.2] = "4.5.0-xlnx-v2025.1%" XILINX_OPTEE_CLIENT[v2026.1] = "4.9.0-xlnx-v2026.1%" PREFERRED_VERSION_optee-client ?= "${@d.getVarFlag('XILINX_OPTEE_CLIENT', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" XILINX_OPTEE_EXAMPLES[v2025.1] = "4.5.0-xlnx-v2025.1%" XILINX_OPTEE_EXAMPLES[v2025.2] = "4.5.0-xlnx-v2025.2%" XILINX_OPTEE_EXAMPLES[v2026.1] = "4.9.0-xlnx-v2026.1%" PREFERRED_VERSION_optee-examples ?= "${@d.getVarFlag('XILINX_OPTEE_EXAMPLES', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" XILINX_OPTEE_OS[v2025.1] = "4.5.0-xlnx-v2025.1%" XILINX_OPTEE_OS[v2025.2] = "4.5.0-xlnx-v2025.2%" XILINX_OPTEE_OS[v2026.1] = "4.9.0-xlnx-v2026.1%" PREFERRED_VERSION_optee-os ?= "${@d.getVarFlag('XILINX_OPTEE_OS', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" XILINX_OPTEE_OS_TADEKIT[v2025.1] = "4.5.0-xlnx-v2025.1%" XILINX_OPTEE_OS_TADEKIT[v2025.2] = "4.5.0-xlnx-v2025.1%" XILINX_OPTEE_OS_TADEKIT[v2026.1] = "4.9.0-xlnx-v2026.1%" PREFERRED_VERSION_optee-tadekit ?= "${@d.getVarFlag('XILINX_OPTEE_OS_TADEKIT', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" XILINX_OPTEE_TEST[v2025.1] = "4.5.0-xlnx-v2025.1%" XILINX_OPTEE_TEST[v2025.2] = "4.5.0-xlnx-v2025.1%" XILINX_OPTEE_TEST[v2026.1] = "4.9.0-xlnx-v2026.1%" PREFERRED_VERSION_optee-test ?= "${@d.getVarFlag('XILINX_OPTEE_TEST', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" # Community meta-arm does not have 2.14 version PREFERRED_VERSION_fiptool-native = "${@"2.14%" if (d.getVar('PREFERRED_VERSION_trusted-firmware-a') or d.getVarFlag('XILINX_TFA_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or '').startswith("2.14") else ''}" PREFERRED_VERSION_tf-a-tests = "${@"2.14%" if (d.getVar('PREFERRED_VERSION_trusted-firmware-a') or d.getVarFlag('XILINX_TFA_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or '').startswith("2.14") else ''}" XILINX_UBOOT_VERSION[v2024.2] = "1:2024.01-xilinx-v2024.2%" XILINX_UBOOT_VERSION[v2025.1] = "1:2025.01-xilinx-v2025.1%" XILINX_UBOOT_VERSION[v2025.2] = "1:2025.01-xilinx-v2025.1%" XILINX_UBOOT_VERSION[v2026.1] = "1:2026.01-xilinx-v2026.1%" PREFERRED_VERSION_u-boot-xlnx ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" PREFERRED_VERSION_u-boot-tools-xlnx ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" PREFERRED_VERSION_u-boot-tools-xlnx-native ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" XILINX_LINUX_VERSION[v2024.2] = "6.6.40%" XILINX_LINUX_VERSION[v2025.1] = "6.12.10%" XILINX_LINUX_VERSION[v2025.2] = "6.12.40%" XILINX_LINUX_VERSION[v2026.1] = "6.18.10%" PREFERRED_VERSION_linux-xlnx ?= "${@d.getVarFlag('XILINX_LINUX_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" # XRT/ZOCL XRT_ZOCL_VERSION[v2024.2] = "202420.2.18.0" XRT_ZOCL_VERSION[v2025.1] = "202510.2.19.0" XRT_ZOCL_VERSION[v2025.2] = "202520.2.20.0" XRT_ZOCL_VERSION[v2026.1] = "202610.2.23.0" PREFERRED_VERSION_xrt ?= "${@d.getVarFlag('XRT_ZOCL_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" PREFERRED_VERSION_zocl ?= "${@d.getVarFlag('XRT_ZOCL_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" # AI-Engine AIEFAL_VERSION[v2024.2] = "1.7" AIEFAL_VERSION[v2025.1] = "1.8" AIEFAL_VERSION[v2025.2] = "1.9" AIEFAL_VERSION[v2026.1] = "2.0" PREFERRED_VERSION_aiefal ?= "${@d.getVarFlag('AIEFAL_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" AI_ENGINE_DRIVER_VERSION[v2024.2] = "3.6" AI_ENGINE_DRIVER_VERSION[v2025.1] = "3.7" AI_ENGINE_DRIVER_VERSION[v2025.2] = "3.8" AI_ENGINE_DRIVER_VERSION[v2026.1] = "3.9" PREFERRED_VERSION_ai-engine-driver ?= "${@d.getVarFlag('AI_ENGINE_DRIVER_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" # Linuxptp for scarhtgap is currently at 4.1, but we want to be able to update # to 4.4 backport from meta-oe master to test 6.18 kernel drivers using 4.4 new # features, so we set the version per release and default to 4.1 for older releases. LINUX_PTP_VERSION[v2024.2] = "4.1" LINUX_PTP_VERSION[v2025.1] = "4.1" LINUX_PTP_VERSION[v2025.2] = "4.1" LINUX_PTP_VERSION[v2026.1] = "4.4" PREFERRED_VERSION_linuxptp ?= "${@d.getVarFlag('LINUX_PTP_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" # Define the pmu-rom filename, needed for coordination between native and machine recipes PMU_ROM ?= "pmu-rom.elf" # Add support to eSDK for gen-machine-conf if it exists PLNX_SCRIPTS_PATH = "${LAYERDIR}/gen-machine-conf/gen-machine-scripts" BB_HASHEXCLUDE_COMMON:append = " PLNX_SCRIPTS_PATH" IMAGE_CLASSES += "gen-machine-conf"