| Message ID | 20251018084117.1798704-1-sjg@u-boot.org |
|---|---|
| Headers |
Return-Path: <concept-bounces+u-boot-concept=u-boot.org@u-boot.org> 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=1760776898; bh=FGY8HFY9OAqh1sYRjlGO4iko+U7VQrrfPYYwxwFH4f4=; h=From:To:Date:CC:Subject:List-Id:List-Archive:List-Help:List-Owner: List-Post:List-Subscribe:List-Unsubscribe:From; b=ayKwfM/cyz+NylUsadYAuZNoc1ztm6YfwolnztU2pmjecX//+TfEg9y9BKxcDtRmU BDAIT5laS492c5H2AUvw4U7AWVXMr+lK9zS7VJluTde28lFr20q6kg6RGWhPgIQcGS n6RiLd05uW38r8lMS4UpdRnQchYHY1bOEyxLL0bm5guspqJaa02u+SyrJQu0HWyLkQ PHr2CZTmfcImZWj3EtXCHtOzSThcUyvf3bzwMUHHfWx4/wF0TUM/oB5J+rioNFwEXE s8Sc/Fzx71BM4fG5RtZ/cOz5qQkELfY/5kTu7WG83GWQvm6JJ9LDs87pR0i5K5rlgw pIwJfBNCtcZJA== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 21A7E681BE for <u-boot-concept@u-boot.org>; Sat, 18 Oct 2025 02:41:38 -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 Y0mAEJSzhyMR for <u-boot-concept@u-boot.org>; Sat, 18 Oct 2025 02:41:38 -0600 (MDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1760776898; bh=FGY8HFY9OAqh1sYRjlGO4iko+U7VQrrfPYYwxwFH4f4=; h=From:To:Date:CC:Subject:List-Id:List-Archive:List-Help:List-Owner: List-Post:List-Subscribe:List-Unsubscribe:From; b=ayKwfM/cyz+NylUsadYAuZNoc1ztm6YfwolnztU2pmjecX//+TfEg9y9BKxcDtRmU BDAIT5laS492c5H2AUvw4U7AWVXMr+lK9zS7VJluTde28lFr20q6kg6RGWhPgIQcGS n6RiLd05uW38r8lMS4UpdRnQchYHY1bOEyxLL0bm5guspqJaa02u+SyrJQu0HWyLkQ PHr2CZTmfcImZWj3EtXCHtOzSThcUyvf3bzwMUHHfWx4/wF0TUM/oB5J+rioNFwEXE s8Sc/Fzx71BM4fG5RtZ/cOz5qQkELfY/5kTu7WG83GWQvm6JJ9LDs87pR0i5K5rlgw pIwJfBNCtcZJA== Received: from mail.u-boot.org (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 112FB68109 for <u-boot-concept@u-boot.org>; Sat, 18 Oct 2025 02:41:38 -0600 (MDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1760776893; bh=eVxEbwHpGy6sHsb9PsxpaTxXQxx2XVHVTDPLCskkyk8=; h=From:To:Cc:Subject:Date:From; b=A6Jq1Xd8P3VnKiib8sHMJ3/PO9xK21IvHSw29+IHHETk/NQHTvF4DfElPIFT5Zleu HyiYji2NKUebepg9S6NWdZpjPZoB8DJhFsGH/6ymqSzepOVl5o3n4UIayk3cPtWYfv jf3YRVmJJtNsRVZzfRbtOPnlideWAdnOxVH+R656Am27YAZFkemQNgDj9g1fjJ8j0K XXxWWOAHXeKXmywBpHyJOwErIRUYBXSbbAdTj1Lpe0O/62oquaw4KajNwP+lakK98p dBc2G2QKhajYx0Quw6q+5luO6qD/gmK/v6FK0vt35+DIaKb8G3K1fGIg42Zgt8PbVv nl+H9C84LMcCQ== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id E64F5681BE; Sat, 18 Oct 2025 02:41:33 -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 jt5tD-JnqLL9; Sat, 18 Oct 2025 02:41:33 -0600 (MDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1760776893; bh=oBFVSUVON+I/wrDHYSjQ0EiV6C/LCF3K4F3Bt8tP5CI=; h=From:To:Cc:Subject:Date:From; b=XBeKQkDXo2JpjPOWmO+/n2zZAMIeRJzWIwuquDCHFKf7CC/7FPuVN/Jvxt1+Qf6bL dNjIt4LQDGMFeS+bKLmLEumLBErR+cfqqpf3fHqZNjc8kA7QQGyvqmf9rFJ3i7CtsM SUZsVd8hLk/JkbVSP4WBfCXs9PqixdnKKoV6MTi9VvIyBm+/CyAvTZIY4gxlfcKJd4 O1cymu0ziy/pS2FKwrdHQH1e3eB7YX3wfjwHppQ4OsNQAb5raAeC+xwu/zdVYDnD53 yXN/WoP5iPnaLcZbYG94oZ6Uyg3ch+gVfcsXQfCqqI5wdWNdReH1CZ7OD6BeWmLiSR e406Guca4nXRQ== Received: from u-boot.org (unknown [73.34.74.121]) by mail.u-boot.org (Postfix) with ESMTPSA id 4959568109; Sat, 18 Oct 2025 02:41:33 -0600 (MDT) From: Simon Glass <sjg@u-boot.org> To: U-Boot Concept <concept@u-boot.org> Date: Sat, 18 Oct 2025 02:40:45 -0600 Message-ID: <20251018084117.1798704-1-sjg@u-boot.org> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Message-ID-Hash: CWLA4CLS2QIUQIXHZ7ENZBGHOCKPQIHH X-Message-ID-Hash: CWLA4CLS2QIUQIXHZ7ENZBGHOCKPQIHH 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 <sjg@chromium.org> X-Mailman-Version: 3.3.10 Precedence: list Subject: [Concept] [PATCH 00/24] bootctl: Expand bootctl to include a new UI List-Id: Discussion and patches related to U-Boot Concept <concept.u-boot.org> Archived-At: <https://lists.u-boot.org/archives/list/concept@u-boot.org/message/CWLA4CLS2QIUQIXHZ7ENZBGHOCKPQIHH/> List-Archive: <https://lists.u-boot.org/archives/list/concept@u-boot.org/> List-Help: <mailto:concept-request@u-boot.org?subject=help> List-Owner: <mailto:concept-owner@u-boot.org> List-Post: <mailto:concept@u-boot.org> List-Subscribe: <mailto:concept-join@u-boot.org> List-Unsubscribe: <mailto:concept-leave@u-boot.org> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit |
| Series |
bootctl: Expand bootctl to include a new UI
|
|
Message
Simon Glass
Oct. 18, 2025, 8:40 a.m. UTC
From: Simon Glass <sjg@chromium.org>
The current bootctl UI is fairly basic, just supporting a keyboard menu
with text.
Now that expo supports a mouse, add a more interesting UI, with more
graphical elements. Provide a way to switch between this and the simple
UI.
This series also includes some small test improvements, along with a
patch to remove a blob from a bloblist.
Simon Glass (24):
test/py: Make test_bind_unbind_with_uclass() independent
test/py: Mark a few more tests as slow
bloblist: Add a name for the EFI log
bloblist: Provide a way to remove a blob
tpm: Correct address handling in tcg2_platform_get_log()
scripts: build-efi: Use a locally built OVMF image
boot: test: Add another Ubuntu image on mmc11
boot: Allow switching back to another layout
test: Correct an incomplete sentence in prep_mmc_bootdev()
sandbox: Enable Ubuntu fonts
bootctl: Plumb in the feature
bootctl: Create a common struct for the BOOTCTL_UI uclass
bootctl: Avoid hanging on failure
bootctl: Provide an option to slow the display refresh
bootctl: Respect the autoboot option
bootctl: Re-apply the theme when showing the UI
bootctl: Bring in some additional images
bootctl: Add an option to switch the layout
bootctl: Provide a multi-themed UI
bootctl: Disable autoboot
bootctl: Add a test for the multi UI
efi: x86: Provide settings for bootctl
efi: x86: Enable required Kconfig options for bootctl
efi: x86: Use only serial for input
.gitignore | 2 +
arch/sandbox/dts/test.dts | 9 +
arch/x86/dts/efi-x86_app.dts | 14 +
board/efi/efi-x86_app/efi-x86_app.env | 1 +
boot/Kconfig | 4 +-
boot/Makefile | 2 +
boot/bootctl/Makefile | 1 +
boot/bootctl/bootctl-uclass.c | 2 +
boot/bootctl/bootctl.c | 3 +-
boot/bootctl/logic.c | 3 +-
boot/bootctl/multi_ui.c | 588 ++++++++++++++++++++++++++
boot/bootctl/simple_ui.c | 111 ++---
boot/bootctl/util.c | 15 +
boot/bootflow_menu.c | 2 +
cmd/Makefile | 1 +
common/bloblist.c | 33 ++
configs/efi-x86_app64_defconfig | 11 +-
configs/sandbox_defconfig | 2 +
drivers/video/images/Makefile | 5 +
drivers/video/images/canonical.bmp | Bin 0 -> 14258 bytes
drivers/video/images/help.bmp | Bin 0 -> 1782 bytes
drivers/video/images/multipass.bmp | Bin 0 -> 4378 bytes
drivers/video/images/settings.bmp | Bin 0 -> 1782 bytes
drivers/video/images/tick.bmp | Bin 0 -> 822 bytes
include/bloblist.h | 12 +
include/bootctl.dtsi | 11 +-
include/bootctl/logic.h | 2 +
include/bootctl/ui.h | 43 ++
include/tpm_tcg2.h | 4 +-
lib/tpm_tcg2.c | 21 +-
scripts/build-efi | 2 +-
test/boot/bootctl/bootctl.c | 181 +++++++-
test/boot/bootflow.c | 2 +-
test/cmd/font.c | 5 +
test/common/bloblist.c | 64 +++
test/dm/video.c | 7 +-
test/py/tests/test_bind.py | 5 +
test/py/tests/test_fit_auto_signed.py | 1 +
test/py/tests/test_make_dep.py | 3 +
test/py/tests/test_ut.py | 3 +-
40 files changed, 1084 insertions(+), 91 deletions(-)
create mode 100644 boot/bootctl/multi_ui.c
create mode 100644 drivers/video/images/canonical.bmp
create mode 100644 drivers/video/images/help.bmp
create mode 100644 drivers/video/images/multipass.bmp
create mode 100644 drivers/video/images/settings.bmp
create mode 100644 drivers/video/images/tick.bmp