From patchwork Mon Jun 12 16:22:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Martin Jansa X-Patchwork-Id: 25451 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 27794C88CB6 for ; Mon, 12 Jun 2023 16:23:04 +0000 (UTC) Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) by mx.groups.io with SMTP id smtpd.web11.63996.1686586976328675994 for ; Mon, 12 Jun 2023 09:22:56 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="signature has expired" header.i=@gmail.com header.s=20221208 header.b=AJJ596XS; spf=pass (domain: gmail.com, ip: 209.85.128.43, mailfrom: martin.jansa@gmail.com) Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-3f81b449357so12447395e9.0 for ; Mon, 12 Jun 2023 09:22:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686586975; x=1689178975; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=z6oYLwqhejmGKDK0Tc04miCfU4lsroLaFsuwq2qeeVw=; b=AJJ596XSz5kN6TpCy9hg48Koxv1MfZqqMb0HPUkPOcNt/Im8+x38G5Yycox2CL0VFK 04zLKSTz6SZLQHpU+USJNKgaZ1k5PfLfMe64TXXzd27Y2mpLLOyJWP5ZPb0jQrYt0rOS WqJ4ZkFGeXr1TnipcPoG+OymvzcyJXZL6gkZ/3FEaJOoyuc6Xurj4v7aDktcn64HNpPH EbkJdTkpQbIURxDmzD/uxKwrta12n65ugvhJ6g6VogkFEKACywbIHYuTUWgDzMeQGyUt 6a0gLXoamtMpcksSxQuknIeldeHCYoglJfXSiSyohoraZ9AkogaDckpeQoQWDNqXcagr NNzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686586975; x=1689178975; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=z6oYLwqhejmGKDK0Tc04miCfU4lsroLaFsuwq2qeeVw=; b=QZ3rGgdTrqK4ZO8Pc4ZCixhxuW05w54g/EK6RwephATUxKgdIZyHx6EZLwgYHzrxsg wJSkb8qvkmCKBRE6L06MijczifhRre69RFXGobRkd+HvzFb2EyffHsX/OiG39nPYRlFt MAmZCcGYSmcuZWLE/CpN5sGdpziuJWgoX6ZSZSi0pr60uqp0pWZXL8jpalhHuRJ+ncg2 aefCMjrIjKCKE77G4jvobd7THnJ/GF0SljdLlz5nkHQ7C8tMR+VLifvfAImVm1Xh7ebG hh85L5RcrTBDh/ncqO5agWAuLZ64ec7n6Rp29YiaGSZRPqvlvaBvrs5r+03UUJwH51iM ltTQ== X-Gm-Message-State: AC+VfDyefCxqnkLqbu2KyupVuQd/fEl32TLg6L9Pho4v57u//1a9JYfO vENzFUQ4kbmM/x45Q/NQnkpyHwuI9Io= X-Google-Smtp-Source: ACHHUZ6mFSQrJqoK6eoeIjV9g1V6x7hMoveVl3BLwaxMZWQbrIqlX5JT4wPsBr28UWiZ2qUvfmZpnw== X-Received: by 2002:a7b:c8ce:0:b0:3f6:f29:7b4b with SMTP id f14-20020a7bc8ce000000b003f60f297b4bmr7419390wml.12.1686586974719; Mon, 12 Jun 2023 09:22:54 -0700 (PDT) Received: from localhost (ip-109-238-218-228.aim-net.cz. [109.238.218.228]) by smtp.gmail.com with ESMTPSA id f9-20020a7bc8c9000000b003f8140763c7sm6742904wml.30.2023.06.12.09.22.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jun 2023 09:22:54 -0700 (PDT) From: Martin Jansa X-Google-Original-From: Martin Jansa To: openembedded-core@lists.openembedded.org Cc: Martin Jansa Subject: [resend][PATCH 3/3] kernel-devicetree: install dtb files without -${KERNEL_DTB_NAME} suffix Date: Mon, 12 Jun 2023 18:22:48 +0200 Message-ID: <20230612162248.3763965-3-Martin.Jansa@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230612162248.3763965-1-Martin.Jansa@gmail.com> References: <20230612162248.3763965-1-Martin.Jansa@gmail.com> 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 ; Mon, 12 Jun 2023 16:23:04 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/182682 * we were installing them with -${KERNEL_DTB_NAME} suffix and then adding a symlink without this suffix if KERNEL_IMAGETYPE_SYMLINK is set: if [ "${KERNEL_IMAGETYPE_SYMLINK}" = "1" ] ; then ln -sf $dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext $deployDir/$dtb_base_name.$dtb_ext fi and another one when KERNEL_DTB_LINK_NAME is set: if [ -n "${KERNEL_DTB_LINK_NAME}" ] ; then ln -sf $dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext $deployDir/$dtb_base_name-${KERNEL_DTB_LINK_NAME}.$dtb_ext fi but KERNEL_DEVICETREE variable doesn't include this -${KERNEL_DTB_NAME} suffix, so everything which uses KERNEL_DEVICETREE either needs to add it as well or depend on KERNEL_IMAGETYPE_SYMLINK being set, e.g. IMAGE_BOOT_FILES variable used by do_image_wic is generated by make_dtb_boot_files function here: https://github.com/agherzan/meta-raspberrypi/blob/2ad4dd667affb72bdbbc2d6b5f7b50589f506b31/conf/machine/include/rpi-base.inc#L118 and do_image_wic fails without KERNEL_IMAGETYPE_SYMLINK: | WARNING: bootloader config not specified, using defaults | | ERROR: _exec_cmd: install -m 0644 -D deploy/images/raspberrypi4-64/bcm2711-rpi-4-b.dtb image/1.0-r1/tmp-wic/boot.1/bcm2711-rpi-4-b.dtb returned '1' instead of 0 | output: install: cannot stat 'deploy/images/raspberrypi4-64/bcm2711-rpi-4-b.dtb': No such file or directory we can fix the function to append -${KERNEL_DTB_NAME} or we can change this to install without suffix and then add ${KERNEL_DTB_NAME} link only when KERNEL_DTB_NAME is set (${MACHINE} by default) * now it looks strange to have both KERNEL_DTB_LINK_NAME and KERNEL_DTB_NAME symlinks, but keep it for backwards compatibility and it will make more sense again together with the rest of [YOCTO #12937] where version specific *_LINK_NAME links are created as hardlinks in separate do_deploy_links task. [YOCTO #12937] Signed-off-by: Martin Jansa --- meta/classes-recipe/kernel-devicetree.bbclass | 28 ++++++++++++------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/meta/classes-recipe/kernel-devicetree.bbclass b/meta/classes-recipe/kernel-devicetree.bbclass index b3bae32f9e..7ccf4b76c8 100644 --- a/meta/classes-recipe/kernel-devicetree.bbclass +++ b/meta/classes-recipe/kernel-devicetree.bbclass @@ -100,28 +100,36 @@ do_deploy:append() { if "${@'false' if oe.types.boolean(d.getVar('KERNEL_DTBVENDORED')) else 'true'}"; then dtb=$dtb_base_name.$dtb_ext fi - install -m 0644 ${D}/${KERNEL_DTBDEST}/$dtb $deployDir/$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext - if [ "${KERNEL_IMAGETYPE_SYMLINK}" = "1" ] ; then - ln -sf $dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext $deployDir/$dtb_base_name.$dtb_ext + install -m 0644 ${D}/${KERNEL_DTBDEST}/$dtb $deployDir/$dtb_base_name.$dtb_ext + if [ -n "${KERNEL_DTB_NAME}" ] ; then + ln -sf $dtb_base_name.$dtb_ext $deployDir/$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext fi if [ -n "${KERNEL_DTB_LINK_NAME}" ] ; then - ln -sf $dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext $deployDir/$dtb_base_name-${KERNEL_DTB_LINK_NAME}.$dtb_ext + ln -sf $dtb_base_name.$dtb_ext $deployDir/$dtb_base_name-${KERNEL_DTB_LINK_NAME}.$dtb_ext fi for type in ${KERNEL_IMAGETYPE_FOR_MAKE}; do if [ "$type" = "zImage" ] && [ "${KERNEL_DEVICETREE_BUNDLE}" = "1" ]; then cat ${D}/${KERNEL_IMAGEDEST}/$type \ - $deployDir/$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext \ - > $deployDir/$type-$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext${KERNEL_DTB_BIN_EXT} + $deployDir/$dtb_base_name.$dtb_ext \ + > $deployDir/$type-$dtb_base_name.$dtb_ext${KERNEL_DTB_BIN_EXT} + if [ -n "${KERNEL_DTB_NAME}" ]; then + ln -sf $type-$dtb_base_name.$dtb_ext${KERNEL_DTB_BIN_EXT} \ + $deployDir/$type-$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext${KERNEL_DTB_BIN_EXT} + fi if [ -n "${KERNEL_DTB_LINK_NAME}" ]; then - ln -sf $type-$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext${KERNEL_DTB_BIN_EXT} \ + ln -sf $type-$dtb_base_name.$dtb_ext${KERNEL_DTB_BIN_EXT} \ $deployDir/$type-$dtb_base_name-${KERNEL_DTB_LINK_NAME}.$dtb_ext${KERNEL_DTB_BIN_EXT} fi if [ -e "${KERNEL_OUTPUT_DIR}/${type}.initramfs" ]; then cat ${KERNEL_OUTPUT_DIR}/${type}.initramfs \ - $deployDir/$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext \ - > $deployDir/${type}-${INITRAMFS_NAME}-$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext${KERNEL_DTB_BIN_EXT} + $deployDir/$dtb_base_name.$dtb_ext \ + > $deployDir/${type}-${INITRAMFS_NAME}-$dtb_base_name.$dtb_ext${KERNEL_DTB_BIN_EXT} + if [ -n "${KERNEL_DTB_NAME}" ]; then + ln -sf ${type}-${INITRAMFS_NAME}-$dtb_base_name.$dtb_ext${KERNEL_DTB_BIN_EXT} \ + $deployDir/${type}-${INITRAMFS_NAME}-$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext${KERNEL_DTB_BIN_EXT} + fi if [ -n "${KERNEL_DTB_LINK_NAME}" ]; then - ln -sf ${type}-${INITRAMFS_NAME}-$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext${KERNEL_DTB_BIN_EXT} \ + ln -sf ${type}-${INITRAMFS_NAME}-$dtb_base_name.$dtb_ext${KERNEL_DTB_BIN_EXT} \ $deployDir/${type}-${INITRAMFS_NAME}-$dtb_base_name-${KERNEL_DTB_LINK_NAME}.$dtb_ext${KERNEL_DTB_BIN_EXT} fi fi