From patchwork Fri Jul 25 20:49:08 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Denys Dmytriyenko X-Patchwork-Id: 67498 X-Patchwork-Delegate: reatmon@ti.com Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1FEFBC87FD1 for ; Fri, 25 Jul 2025 20:49:18 +0000 (UTC) Received: from mailout4.zoneedit.com (mailout4.zoneedit.com [64.68.198.64]) by mx.groups.io with SMTP id smtpd.web11.29192.1753476551138473716 for ; Fri, 25 Jul 2025 13:49:11 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: denix.org, ip: 64.68.198.64, mailfrom: denis@denix.org) Received: from localhost (localhost [127.0.0.1]) by mailout4.zoneedit.com (Postfix) with ESMTP id 8BB8F40CC0; Fri, 25 Jul 2025 20:49:10 +0000 (UTC) Received: from mailout4.zoneedit.com ([127.0.0.1]) by localhost (zmo14-pco.easydns.vpn [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7FssKfhuc0Qa; Fri, 25 Jul 2025 20:49:10 +0000 (UTC) Received: from mail.denix.org (pool-100-15-87-159.washdc.fios.verizon.net [100.15.87.159]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mailout4.zoneedit.com (Postfix) with ESMTPSA id 7122B40CC2; Fri, 25 Jul 2025 20:49:09 +0000 (UTC) Received: from thorin.han-sole.ts.net (thorin.denix [192.168.30.9]) by mail.denix.org (Postfix) with ESMTP id 2D7E916CE33; Fri, 25 Jul 2025 16:49:09 -0400 (EDT) From: Denys Dmytriyenko To: meta-ti@lists.yoctoproject.org Cc: Denys Dmytriyenko Subject: [scarthgap][PATCH 3/3] meta-ti-bsp: convert DTB prefix matching into class Date: Fri, 25 Jul 2025 16:49:08 -0400 Message-Id: <20250725204908.2549495-3-denis@denix.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20250725204908.2549495-1-denis@denix.org> References: <20250725204908.2549495-1-denis@denix.org> MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 25 Jul 2025 20:49:18 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/meta-ti/message/18834 From: Denys Dmytriyenko Convert devicetree prefix matching functionality into a generic class that can be used by the kernel and wic images. That way dynamically generated KERNEL_DEVICETREE list will be the same when populating /boot dir of rootfs and/or FAT boot partition of a wic image. Signed-off-by: Denys Dmytriyenko --- .../ti-devicetree-prefix.bbclass} | 7 +++++-- meta-ti-bsp/conf/machine/include/ti-soc.inc | 8 ++++++++ meta-ti-bsp/recipes-kernel/linux/linux-ti-next_git.bb | 2 -- meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.12.bb | 1 - meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.6.bb | 1 - 5 files changed, 13 insertions(+), 6 deletions(-) rename meta-ti-bsp/{recipes-kernel/linux/ti-kernel-devicetree-prefix.inc => classes/ti-devicetree-prefix.bbclass} (87%) diff --git a/meta-ti-bsp/recipes-kernel/linux/ti-kernel-devicetree-prefix.inc b/meta-ti-bsp/classes/ti-devicetree-prefix.bbclass similarity index 87% rename from meta-ti-bsp/recipes-kernel/linux/ti-kernel-devicetree-prefix.inc rename to meta-ti-bsp/classes/ti-devicetree-prefix.bbclass index 2d7be280..5858cc65 100644 --- a/meta-ti-bsp/recipes-kernel/linux/ti-kernel-devicetree-prefix.inc +++ b/meta-ti-bsp/classes/ti-devicetree-prefix.bbclass @@ -1,3 +1,4 @@ +# Generate list of DTBs from the kernel source def get_dtbs_from_kernel(dts_dir, dts_prefix): import os import glob @@ -17,6 +18,8 @@ def get_dtbs_from_kernel(dts_dir, dts_prefix): matches.append(filename) return ' '.join(matches) +# Generate list of "merged" DTBs from the kernel source +# It is TI custom feature to merge DTB overlays into a single DTB def get_merge_dtbs_from_kernel(dts_dir, dts_pattern): import os matches = [] @@ -32,9 +35,9 @@ def get_merge_dtbs_from_kernel(dts_dir, dts_pattern): matches.append(pattern) return ' '.join(matches) -KERNEL_DEVICETREE_DTBMERGE ?= "" - KERNEL_DEVICETREE = " \ ${@get_dtbs_from_kernel('${STAGING_KERNEL_DIR}/arch/${ARCH}/boot/dts/', '${KERNEL_DEVICETREE_PREFIX}')} \ ${@get_merge_dtbs_from_kernel('${STAGING_KERNEL_DIR}/arch/${ARCH}/boot/dts/', '${KERNEL_DEVICETREE_DTBMERGE}')} \ " + +do_image_wic[depends] += "virtual/kernel:do_shared_workdir" diff --git a/meta-ti-bsp/conf/machine/include/ti-soc.inc b/meta-ti-bsp/conf/machine/include/ti-soc.inc index 85f6f338..018e9bfb 100644 --- a/meta-ti-bsp/conf/machine/include/ti-soc.inc +++ b/meta-ti-bsp/conf/machine/include/ti-soc.inc @@ -19,3 +19,11 @@ KERNEL_DTBVENDORED = "1" # Also build a non-vendored list w/o dir structure DEVICETREE_FILES = "${@' '.join([os.path.basename(f) for f in d.getVar("KERNEL_DEVICETREE").split()])}" + +KERNEL_DEVICETREE_DTBMERGE ?= "" + +# Dynamically build DTBs list based on prefix matching +CLASS_DEVICETREE_PREFIX = "${@ 'ti-devicetree-prefix' if d.getVar('KERNEL_DEVICETREE_PREFIX') else ''}" + +KERNEL_CLASSES += "${CLASS_DEVICETREE_PREFIX}" +IMAGE_CLASSES += "${CLASS_DEVICETREE_PREFIX}" diff --git a/meta-ti-bsp/recipes-kernel/linux/linux-ti-next_git.bb b/meta-ti-bsp/recipes-kernel/linux/linux-ti-next_git.bb index 1feb7564..60b647f1 100644 --- a/meta-ti-bsp/recipes-kernel/linux/linux-ti-next_git.bb +++ b/meta-ti-bsp/recipes-kernel/linux/linux-ti-next_git.bb @@ -2,8 +2,6 @@ require linux-ti-mainline_git.bb SUMMARY = "Linux-next kernel for TI devices" -include ${@ 'recipes-kernel/linux/ti-kernel-devicetree-prefix.inc' if d.getVar('KERNEL_DEVICETREE_PREFIX') else ''} - # 6.6.0-rc3+ version SRCREV = "6465e260f48790807eef06b583b38ca9789b6072" PV = "6.6.0-rc3+git" diff --git a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.12.bb b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.12.bb index 9235cbc5..aa677cb2 100644 --- a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.12.bb +++ b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.12.bb @@ -8,7 +8,6 @@ inherit kernel require recipes-kernel/linux/setup-defconfig.inc require recipes-kernel/linux/ti-kernel.inc -include ${@ 'recipes-kernel/linux/ti-kernel-devicetree-prefix.inc' if d.getVar('KERNEL_DEVICETREE_PREFIX') else ''} include ${@ 'recipes-kernel/linux/ti-extras.inc' if d.getVar('TI_EXTRAS') else ''} DEPENDS += "gmp-native libmpc-native" diff --git a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.6.bb b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.6.bb index 17bcd300..d6985b27 100644 --- a/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.6.bb +++ b/meta-ti-bsp/recipes-kernel/linux/linux-ti-staging_6.6.bb @@ -8,7 +8,6 @@ inherit kernel require recipes-kernel/linux/setup-defconfig.inc require recipes-kernel/linux/ti-kernel.inc -include ${@ 'recipes-kernel/linux/ti-kernel-devicetree-prefix.inc' if d.getVar('KERNEL_DEVICETREE_PREFIX') else ''} include ${@ 'recipes-kernel/linux/ti-extras.inc' if d.getVar('TI_EXTRAS') else ''} DEPENDS += "gmp-native libmpc-native"