From patchwork Sat Oct 18 08:40:56 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Glass X-Patchwork-Id: 611 Return-Path: X-Original-To: u-boot-concept@u-boot.org Delivered-To: u-boot-concept@u-boot.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1760776933; bh=4BZcWwJZNcJIwutCLegxCfxb+LdOLE/cYgmf9ZiN8QM=; h=From:To:Date:In-Reply-To:References:CC:Subject:List-Id: List-Archive:List-Help:List-Owner:List-Post:List-Subscribe: List-Unsubscribe:From; b=hhzouW5l3i3aU+RZEmV4QesVoZyOBVUmkB1drjEt4s26bF2PG8jvsyqvE6R3VgHFa x+q0A3URGF4sMuB09PBLkjRixZnjVUMS5aeyH6gK0KBMw2JYr0od+g4Nl0vpt9LAnd j9cSA4ftp1UjS65jFM7L65/EdQ6tqQmFVfwzc69n8Z/7PaqyhqIHXRPirnkYRZMnld /3231TmDPFG6TMienTothU1LO5zTTgpFjC1Aefq1UegCTtUVpMAZaCOuPLc5mx+A/V NAPyAg1tjH2jnYg6vSrKpEMRVxWLc+S1a896lv6h9d4jzAlMr7K+6afUfBuNlgpJJi U/dWzcBNeJUPw== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id E628E6814E for ; Sat, 18 Oct 2025 02:42:13 -0600 (MDT) X-Virus-Scanned: Debian amavis at Received: from mail.u-boot.org ([127.0.0.1]) by localhost (mail.u-boot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id ini7CmZoLqQx for ; Sat, 18 Oct 2025 02:42:13 -0600 (MDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1760776931; bh=4BZcWwJZNcJIwutCLegxCfxb+LdOLE/cYgmf9ZiN8QM=; h=From:To:Date:In-Reply-To:References:CC:Subject:List-Id: List-Archive:List-Help:List-Owner:List-Post:List-Subscribe: List-Unsubscribe:From; b=ABWx3dwj3RIvVAN5Z3D9PtJfO6sjqfEoAEYU6CmMiQ5orBKXoWl4BPVhYqkefx6Uf b5wM/YMRqFrN2qzrL7U629ItHKx2sW7v9HOnmFdBDizA0v2fD9V6p/vpXCtE8pcnRB y9aeDgqSMZcGICWdPoS1ut92wxBSIwZHrHwjha2bqDLBJpGtvtoPXdPbI02Q4QQx0v kyAqmIEGWwAza+NtNQE6UvjvOkeXRtxq9hsNiOaz0lvutBfGD9uZS45D88eCmbWVKx omh2Rzoq9mztiwTGCAGyVl8iqB/eTJQbWfl574Nal07KbqHJnqupGDfwEESzPt9bRs eApCDT6foyO8g== Received: from mail.u-boot.org (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id DE45D681BE for ; Sat, 18 Oct 2025 02:42:11 -0600 (MDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1760776928; bh=6MHBS9T0yQknCH6Q8PkQnugh7iVKzP3HGDml6mytB9Q=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VHc9aaH0bGAeBjBBbnNtVI4OilOqZq/IS8O6wQSTadHnvlIkaVZcbOJ50xlhS4oxk J4JYrS/ewfIFJgVyLySKq2Xhjewx9fP5DFYobhl21u6a3TV50oK0xMVx3HEFqoDJxk y/prg0JC+JO+F02ytyL+XL5Ga5aRf+b72/WT/fX3MpnaqDi+MRTT0r5TzVf7SHR9kx YBFcWrNkDtqRSh9XoBPtCpATh1UYcLq8kUiy/xFtsMET7pEHhLQLgoG9dUtSMGeHXf ghyLw9kwzA6+RLL+ONDqLo9ENLJye7/Fs1x45ivb19RHypsx5BskpaAlyLA1dqHyKK wHVUVm8RXbtDg== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id D0D0D68109; Sat, 18 Oct 2025 02:42:08 -0600 (MDT) X-Virus-Scanned: Debian amavis at Received: from mail.u-boot.org ([127.0.0.1]) by localhost (mail.u-boot.org [127.0.0.1]) (amavis, port 10026) with ESMTP id mh4p1KNGKSip; Sat, 18 Oct 2025 02:42:08 -0600 (MDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1760776927; bh=tutvHa5+kfc36PqNsy2mQvLHhLbHyPr3RUsvu2mxDjk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OEQ+gI6lW9TRFPZ5SThnOjXhTPkpTSCL4HRH2nCZpYWnQTddwnABfxiPLBWMxw9Bm pHax/L+dSy26YqG049vGaMuTsjbkczEAVBCj67ubizGJSVTjU4IVGEw/kYsJLXND2s JaRwxtPvCcxoAqSeOXuu1ek/vpzHZFnGKerdBNmSLsJKzfqt4pk3vm4btPp6zjuu0Q 8V4+uuXMp8EjlQgf2hJFECTie8/6fmZzZB8+r7dy5GWA52GrPnrg/WYakdOz2tpufd WpJrI/o0oQVA9yXqCIL+MvQql22SKEbpemy4T01kWtosyml1ayoA9gc0/MRUFltZnz lOD+Qkmk8ERbg== Received: from u-boot.org (unknown [73.34.74.121]) by mail.u-boot.org (Postfix) with ESMTPSA id 2F0C068188; Sat, 18 Oct 2025 02:42:07 -0600 (MDT) From: Simon Glass To: U-Boot Concept Date: Sat, 18 Oct 2025 02:40:56 -0600 Message-ID: <20251018084117.1798704-12-sjg@u-boot.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251018084117.1798704-1-sjg@u-boot.org> References: <20251018084117.1798704-1-sjg@u-boot.org> MIME-Version: 1.0 Message-ID-Hash: 7ZJ6O36QKCASLJO54HE5UPZSK7DTRXHE X-Message-ID-Hash: 7ZJ6O36QKCASLJO54HE5UPZSK7DTRXHE X-MailFrom: sjg@u-boot.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Simon Glass X-Mailman-Version: 3.3.10 Precedence: list Subject: [Concept] [PATCH 11/24] bootctl: Plumb in the feature List-Id: Discussion and patches related to U-Boot Concept Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Simon Glass The code is present but is not currently enabled. Add Makefile rules so that it is built. Also add a gitignore for bootctl.ini since this file is created when 'bootctl run' is used. Update the Kconfig rule to disable this by default, except for sandbox the EFI app. Add a dependency on CMDLINE since the textline object calls cread_line_process_ch() which is otherwise not available. Signed-off-by: Simon Glass --- .gitignore | 2 ++ boot/Kconfig | 4 ++-- boot/Makefile | 2 ++ cmd/Makefile | 1 + 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 6b95c85b9b8..986ab7ffda3 100644 --- a/.gitignore +++ b/.gitignore @@ -134,3 +134,5 @@ __pycache__ # Clang's compilation database file /compile_commands.json + +bootctl.ini diff --git a/boot/Kconfig b/boot/Kconfig index b255245335b..cde4472ca57 100644 --- a/boot/Kconfig +++ b/boot/Kconfig @@ -507,8 +507,8 @@ config BOOT_DEFAULTS config BOOTCTL bool "Support for boot control" - depends on BOOTSTD - default y + depends on EXPO && CMDLINE + default y if SANDBOX || EFI_APP help This supports an experimental boot control, providing a way to discover and boot Operating Systems. diff --git a/boot/Makefile b/boot/Makefile index 3cb138ae022..cfa5a0a98e9 100644 --- a/boot/Makefile +++ b/boot/Makefile @@ -17,6 +17,8 @@ obj-y += image.o image-board.o bootm_final.o obj-$(CONFIG_ANDROID_AB) += android_ab.o obj-$(CONFIG_ANDROID_BOOT_IMAGE) += image-android.o image-android-dt.o +obj-$(CONFIG_$(PHASE_)BOOTCTL) += bootctl/ + obj-$(CONFIG_$(PHASE_)BOOTSTD) += bootdev-uclass.o obj-$(CONFIG_$(PHASE_)BOOTSTD) += bootflow.o obj-$(CONFIG_$(PHASE_)BOOTSTD) += bootmeth-uclass.o diff --git a/cmd/Makefile b/cmd/Makefile index 1d65703b625..b73725cfe41 100644 --- a/cmd/Makefile +++ b/cmd/Makefile @@ -21,6 +21,7 @@ obj-$(CONFIG_CMD_AES) += aes.o obj-$(CONFIG_CMD_ADC) += adc.o obj-$(CONFIG_CMD_ARMFLASH) += armflash.o obj-$(CONFIG_BLK) += blk_common.o +obj-$(CONFIG_CMD_BOOTCTL) += bootctl.o obj-$(CONFIG_CMD_BOOTDEV) += bootdev.o obj-$(CONFIG_CMD_BOOTFLOW) += bootflow.o obj-$(CONFIG_CMD_BOOTMETH) += bootmeth.o