{"id":2233070,"url":"http://patchwork.ozlabs.org/api/1.2/patches/2233070/?format=json","web_url":"http://patchwork.ozlabs.org/project/uboot/patch/20260505-b4-qcom-tooling-improvements-v6-5-a5fb673f4af6@linaro.org/","project":{"id":18,"url":"http://patchwork.ozlabs.org/api/1.2/projects/18/?format=json","name":"U-Boot","link_name":"uboot","list_id":"u-boot.lists.denx.de","list_email":"u-boot@lists.denx.de","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260505-b4-qcom-tooling-improvements-v6-5-a5fb673f4af6@linaro.org>","list_archive_url":null,"date":"2026-05-05T15:48:45","name":"[v6,5/6] mach-snapdragon: add kconfig infra for building MBN files","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"e259d2609ae1907d217e18a8734e1ee8ba2f10c9","submitter":{"id":90679,"url":"http://patchwork.ozlabs.org/api/1.2/people/90679/?format=json","name":"Casey Connolly","email":"casey.connolly@linaro.org"},"delegate":{"id":151538,"url":"http://patchwork.ozlabs.org/api/1.2/users/151538/?format=json","username":"kcxt","first_name":"Casey","last_name":"Connolly","email":"casey.connolly@linaro.org"},"mbox":"http://patchwork.ozlabs.org/project/uboot/patch/20260505-b4-qcom-tooling-improvements-v6-5-a5fb673f4af6@linaro.org/mbox/","series":[{"id":502858,"url":"http://patchwork.ozlabs.org/api/1.2/series/502858/?format=json","web_url":"http://patchwork.ozlabs.org/project/uboot/list/?series=502858","date":"2026-05-05T15:48:40","name":"Qualcomm: teach the build system to emit signed ELF images","version":6,"mbox":"http://patchwork.ozlabs.org/series/502858/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2233070/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2233070/checks/","tags":{},"related":[],"headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=ftheiVS0;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de;\n envelope-from=u-boot-bounces@lists.denx.de; receiver=patchwork.ozlabs.org)","phobos.denx.de;\n dmarc=pass (p=none dis=none) header.from=linaro.org","phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de","phobos.denx.de;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=linaro.org header.i=@linaro.org header.b=\"ftheiVS0\";\n\tdkim-atps=neutral","phobos.denx.de;\n dmarc=pass (p=none dis=none) header.from=linaro.org","phobos.denx.de;\n spf=pass smtp.mailfrom=casey.connolly@linaro.org"],"Received":["from phobos.denx.de (phobos.denx.de\n [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g92yD0HBdz1yJx\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 06 May 2026 01:49:40 +1000 (AEST)","from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id 0E37984995;\n\tTue,  5 May 2026 17:48:59 +0200 (CEST)","by phobos.denx.de (Postfix, from userid 109)\n id 2AC9284951; Tue,  5 May 2026 17:48:58 +0200 (CEST)","from mail-wm1-x32d.google.com (mail-wm1-x32d.google.com\n [IPv6:2a00:1450:4864:20::32d])\n (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id 35C09848B7\n for <u-boot@lists.denx.de>; Tue,  5 May 2026 17:48:56 +0200 (CEST)","by mail-wm1-x32d.google.com with SMTP id\n 5b1f17b1804b1-488b0e1b870so85724395e9.2\n for <u-boot@lists.denx.de>; Tue, 05 May 2026 08:48:56 -0700 (PDT)","from lion.localdomain (p4fc3dd86.dip0.t-ipconnect.de.\n [79.195.221.134]) by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-48d182ee923sm20305955e9.27.2026.05.05.08.48.54\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 05 May 2026 08:48:55 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED,\n SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1777996136; x=1778600936; darn=lists.denx.de;\n h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n :mime-version:subject:date:from:from:to:cc:subject:date:message-id\n :reply-to; bh=39y7gNinOlLetUo96ETHbfB+81x37gGbV9+WWeJWJh4=;\n b=ftheiVS0IcrjKAK6OwCtk65Aa5mDg2IQcDSfoua2W+isOVz9dq9ehAGmWcSo5RDUT1\n pj7f7OmkKGRKzE9MTcZhgxuqfaN1ALWshdgSfsGld0md/rmGcr6/EuSOxt28Sc4g1mMM\n /VF3rnmOZdcp7WPC2EJbdsd4NlOL6+MA6dKQGm9wsib6z2kxl2pXGyL/J70vOBXcYw+c\n b2n1NnvReKp2v9f+DajwarR9L2xMiOw1oyaBsVOb6LlPGqzJ10VWDDuAov0k/0okjfqA\n vQGGnWKD0X84DQuqZ/sSlHUeKtVi/GMMGdJ2DATqfEWKH9Wo17T1vt/0JeTVHuQiIb+o\n Rxug==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777996136; x=1778600936;\n h=cc:to:in-reply-to:references:message-id:content-transfer-encoding\n :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to\n :cc:subject:date:message-id:reply-to;\n bh=39y7gNinOlLetUo96ETHbfB+81x37gGbV9+WWeJWJh4=;\n b=IKGNZ8NDNTjm5kE3b+knKXCkjaH+OEsqSkz9mQCG0GVSoxp+TwvZlczKP62Pnzqsz0\n Yzydr6zBPUdiAUGy8V82mrLNTZ2i+Smp6jpDvdnnIYfnxxjDZ7e5MhOR5CvsHCbK13kq\n qQ/Yb1HKN1Hj4dt63d0wldlHav1TvD9qbipYK32CiYbLPS1EdDeSpRJmZBBv9fzBYdrP\n +3uAuczED/CdTJeK0Z9Kd7502ZgTTbxaClKJQ/z+PKgh2Jrkk00fnMFffWKL8MS7HR0M\n 7jccC0OPUVzgx/TTbVVQGy21HrhltUSjLge2sJzu8A/Wl7ehlgv724g99P6uUcZTLAe2\n 3TIQ==","X-Gm-Message-State":"AOJu0YxGUFEu3Mvi0RS2TZvaNvFIh5VVmUTCIlXnsvDIVdi9oaEZAwCc\n 9zwOk7UIxadoIYENMNyprMna9gQK2qGSTW2xJUewGSMAl8rHCCqTYdcQjJakJy2h8Rs=","X-Gm-Gg":"AeBDieurB29k+JZ5OdmVsmtAmE91yXUlUmk+h0SRBeWkMmjQSYd/1R6hV6n9PQXscE/\n xsPuj5F/1r9VbzSixXsNbzzmpN6NBWXBj8q/9cy+FCr3pupWmyp+HoO+llk4r0gLDhiHkJ58kvt\n JavcETibeOPH/Q8cP1u9m70wKaRGB1DdBfWdKF/0b3tAkHWzwC/Np866sqDZpiSJt8NB1nKOE6v\n qCAANL4ENhdV5RRVGygUg/PmLyBdTafhCSUEuhxM03BZpS9UM9eoDrrueIiG7c2Rj65qslf/hjn\n GVuX6JgElyhnZsAkOGfSsNJk85XSlX5BzH1ARkwJGF2UZvVcgtBaU4aV0c5LNVB9AM2NnqL4qSE\n he8GvdK5V1v7qfhLkjraf4df+NvGibIfoz9QSbvV0fKvbV/bq7OP9AGnKPlCp8pptZYoTiruidG\n kB5P9Qg+bbyjTnVvmmR5TUcMivByAt5MEIqWslo1aAKVvb+zQ+8yfvZ/M5ZblSVs6pnotJYPmIu\n q3aCQ8=","X-Received":"by 2002:a05:600c:a111:b0:488:a2ac:a34c with SMTP id\n 5b1f17b1804b1-48a9863cde5mr171139505e9.12.1777996135585;\n Tue, 05 May 2026 08:48:55 -0700 (PDT)","From":"Casey Connolly <casey.connolly@linaro.org>","Date":"Tue, 05 May 2026 17:48:45 +0200","Subject":"[PATCH v6 5/6] mach-snapdragon: add kconfig infra for building MBN\n files","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-Id":"\n <20260505-b4-qcom-tooling-improvements-v6-5-a5fb673f4af6@linaro.org>","References":"\n <20260505-b4-qcom-tooling-improvements-v6-0-a5fb673f4af6@linaro.org>","In-Reply-To":"\n <20260505-b4-qcom-tooling-improvements-v6-0-a5fb673f4af6@linaro.org>","To":"u-boot@lists.denx.de, Sumit Garg <sumit.garg@kernel.org>,\n u-boot-qcom@groups.io","Cc":"Tom Rini <trini@konsulko.com>,\n Casey Connolly <casey.connolly@linaro.org>,\n Neil Armstrong <neil.armstrong@linaro.org>,\n Balaji Selvanathan <balaji.selvanathan@oss.qualcomm.com>,\n Varadarajan Narayanan <quic_varada@quicinc.com>,\n Quentin Schulz <quentin.schulz@cherry.de>,\n Heinrich Schuchardt <xypron.glpk@gmx.de>,\n Marek Vasut <marek.vasut+renesas@mailbox.org>, Peng Fan <peng.fan@nxp.com>,\n Jaehoon Chung <jh80.chung@samsung.com>,\n Aswin Murugan <aswin.murugan@oss.qualcomm.com>,\n Ilias Apalodimas <ilias.apalodimas@linaro.org>,\n Michal Simek <michal.simek@amd.com>, David Lechner <dlechner@baylibre.com>","X-Mailer":"b4 0.16-dev","X-Developer-Signature":"v=1; a=openpgp-sha256; l=2455;\n i=casey.connolly@linaro.org; h=from:subject:message-id;\n bh=xNBl772678bX3pMRK2ILHqAEnKdLM+zFZttaj+nLKJY=;\n b=owGbwMvMwCFYaeA6f6eBkTjjabUkhsxfgrGsCV+9Ty5Uj/+cne8o/IX/8aHNvh131k4KW/A2T\n atHR+ZZRykLgyAHg6yYIov4iWWWTWsv22tsX3ABZg4rE8gQBi5OAZjI+R6Gv4L5Rdl5oQdE3SaV\n PC2Z9W9jHZdkQgxfYUD1RLe7LR4XOBgZJk8453n+1bvmy6I8c3c++rLqm1j4FIOnvYKLtE+kfm5\n eGAgA","X-Developer-Key":"i=casey.connolly@linaro.org; a=openpgp;\n fpr=83B24DA7FE145076BC38BB250CD904EB673A7C47","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.39","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<https://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=subscribe>","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>","X-Virus-Scanned":"clamav-milter 0.103.8 at phobos.denx.de","X-Virus-Status":"Clean"},"content":"Add a qualcomm specific Makefile fragment to make u-boot.mbn a build\ntarget and introduce a kconfig option to build it by default on relevant\nplatforms via CONFIG_BUILD_TARGET.\n\nSigned-off-by: Casey Connolly <casey.connolly@linaro.org>\n---\n Kconfig                          |  1 +\n arch/arm/mach-snapdragon/Kconfig | 11 +++++++++++\n board/qualcomm/config.mk         | 14 ++++++++++++++\n 3 files changed, 26 insertions(+)","diff":"diff --git a/Kconfig b/Kconfig\nindex 8428d039a1c0..183c8096030d 100644\n--- a/Kconfig\n+++ b/Kconfig\n@@ -557,8 +557,9 @@ config BUILD_TARGET\n \tdefault \"u-boot-with-spl.sfp\" if ARCH_SOCFPGA_GEN5\n \tdefault \"u-boot.itb\" if !BINMAN && SPL_LOAD_FIT && (ARCH_ROCKCHIP || \\\n \t\t\t\tRISCV || ARCH_ZYNQMP)\n \tdefault \"u-boot.kwb\" if (ARCH_KIRKWOOD || ARMADA_32BIT) && !SPL\n+\tdefault \"u-boot.mbn\" if ARCH_SNAPDRAGON && QCOM_GENERATE_MBN\n \thelp\n \t  Some SoCs need special image types (e.g. U-Boot binary\n \t  with a special header) as build targets. By defining\n \t  CONFIG_BUILD_TARGET in the SoC / board header, this\ndiff --git a/arch/arm/mach-snapdragon/Kconfig b/arch/arm/mach-snapdragon/Kconfig\nindex d3de8693b5a8..6329cbb9215e 100644\n--- a/arch/arm/mach-snapdragon/Kconfig\n+++ b/arch/arm/mach-snapdragon/Kconfig\n@@ -41,5 +41,16 @@ config SYS_CONFIG_NAME\n \t  This option contains information about board configuration name.\n \t  Based on this option include/configs/<CONFIG_SYS_CONFIG_NAME>.h header\n \t  will be used for board configuration.\n \n+config QCOM_GENERATE_MBN\n+\tbool \"Generate an MBN-compatible ELF binary\"\n+\tdefault n\n+\thelp\n+\t  Enable this if you intend to flash U-Boot as a first-stage bootloader.\n+\t  The build system will generate a board-specific ELF file with the appropriate\n+\t  MBN hash segments and test keys.\n+\n+\t  New platforms can be added to tools/qcom/mkmbn/mkmbn.py if they aren't already\n+\t  supported.\n+\n endif\ndiff --git a/board/qualcomm/config.mk b/board/qualcomm/config.mk\nnew file mode 100644\nindex 000000000000..769e4a51ca01\n--- /dev/null\n+++ b/board/qualcomm/config.mk\n@@ -0,0 +1,14 @@\n+# SPDX-License-Identifier: GPL-2.0+\n+#\n+# (C) Copyright Linaro Ltd.\n+#\n+# Qualcomm specific make target for MBN signed ELF files.\n+#\n+\n+# Create Qualcomm signed elf images\n+CMD_MKMBN = $(srctree)/tools/qcom/mkmbn/mkmbn.py\n+quiet_cmd_mkmbn = MBN     $@\n+      cmd_mkmbn = $(CMD_MKMBN) $<\n+\n+u-boot.mbn: u-boot.bin FORCE\n+\t$(call if_changed,mkmbn)\n","prefixes":["v6","5/6"]}