From patchwork Mon Dec 8 02:32:11 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Glass X-Patchwork-Id: 841 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=1765161208; bh=YCH99rfyMB4zBONnM46Zat5ogYXXY0FafgddfJ3QTBo=; 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=Am5MOdyrUzR1rD1Bgc5EOlVFpZKJrFuXlVe7WmQ4wGDYN+7pnAXA7bgBmsMQ1GbaQ X5c5EoKSOpyGaqKnXG2u91V2XTDIhacNZX/inVba5ky2rC3/3lXW6Nym4tIZLO0v0Q q5tjfHlL2UPZk4pNEgPNOB/A2BzQqwVsE5QR4dtFPRHlyS3Sax4UeXjTcJZmrU7e8G g7yPdecuPwZoWKLp+/NmUcVQTridVUQHNnWVTrEP97xt/i+eftU26xBjYc6LOUZeLa XTJKzXQoQRTlUnYNXMpqs1i0AFoZqFgYoK5AQLGevK2GfZKHDLvVzRoLmODCKYvefF dk6MAGiUYgbqg== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 103F0689D7 for ; Sun, 7 Dec 2025 19:33:28 -0700 (MST) 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 CDnIV4VKiEVy for ; Sun, 7 Dec 2025 19:33:27 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1765161207; bh=YCH99rfyMB4zBONnM46Zat5ogYXXY0FafgddfJ3QTBo=; 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=fJizZfSB7j4BqAdS0Qu7Vd2YWEQ5973bhnwJkxJFfMzCaXNHU6140sU+NMp7hNugs srWvf3o6AkgHY6lHFwyPd0r3fi2/zNMEeGnSIjquF7eDYgpCJNf+BEd8fZXQBM1z9U rhBsoTm6DPhFwbtC0iPrq+KU2K4OY0WpWiqFIlYY7TdaMhg7GBh8S66/6oRffFDSgw PI+9c6hGg7eHUjsyuBUlfCjgvvL0xaqVYBs1g8RdXURERcLJ2AgaO2xG9YDROkyg6g paru50uv+DKRQrIAlrm0/Wht466hgIk8pXqaTkqhFBbR+/F486owRpp9jh51WLMTBN yWe83wlNiY34g== Received: from mail.u-boot.org (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 19139689C2 for ; Sun, 7 Dec 2025 19:33:27 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1765161205; bh=lMC/LmacwzyOSjNeKJPbJUwn9B0vcM1Go8htzaqS6as=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=HxpchNMkQWdgc3gly5247gYO9T2Tw0wTSo0+ab4LfKiq9/BoLxFXUJIi6A4+Ved8l Rwt6a74qQ4JguypLVaIZcQjrEtsq64UM6IxkMPisKbyer8WIi2YnluK7/UUY+zv+hK oZj0uEjiijdBeQ+4PXutibn39410M8iFp+XyQsLHVfSSWR9MndwZ0wOn6PLZyVwsOr VeRCI5dKYQFiJurA7brsMOt81xVB3DMggFhPQX8FP5EIuwQLlQODMWjofwTJQNC8Cj ElxZ9aMs2AGJnF4he4o5gYCGYLQzupOFif9LcXcl1jJ8Q124NGGEze7BjiRuAYTEfV mbEsTqFz7e1vA== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id C4C96689D3; Sun, 7 Dec 2025 19:33:25 -0700 (MST) 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 40J9yANOkNW7; Sun, 7 Dec 2025 19:33:25 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1765161204; bh=AI8+cqb9kI/gKG2J4sxsKDm7w1kVQ5Pfqmda2PYtucU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ohIPrzH9SaEktDEpvi2Au7ICwI/1P6to8K79N5AixUzugInfITqHBpblm0zqNBD/P sirVg8hKwDy9KTAtkDN94bVkgb8u01Y9d0/sotAB5ue6RxuvIM9ueuZx5M4Fg023B7 x/iYqmmoOG9K74vfIPUOKavxGGC0VMjo5d8ZILSDtWUo58ph/j0t9RAnS2sTPqtKOi dfC4s9+u2BJe6VjGakIZ4DyywAqOJgLaKwCdeoAeSG9BiZAtfen6o6vLffbc+3wxE4 x/CglAGxhJr7CIeE8dCkghgw6hBQiaD+KlSLbgJov/nxR1Epr1v70Ren2hH3tUFR5W uq/F8gsLVahWQ== Received: from u-boot.org (unknown [73.34.74.121]) by mail.u-boot.org (Postfix) with ESMTPSA id C2E3B688F0; Sun, 7 Dec 2025 19:33:23 -0700 (MST) From: Simon Glass To: U-Boot Concept Date: Sun, 7 Dec 2025 19:32:11 -0700 Message-ID: <20251208023229.3929910-9-sjg@u-boot.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251208023229.3929910-1-sjg@u-boot.org> References: <20251208023229.3929910-1-sjg@u-boot.org> MIME-Version: 1.0 Message-ID-Hash: YMDPVGDC2DFFC3RPG3IFKE46GIHDLKPS X-Message-ID-Hash: YMDPVGDC2DFFC3RPG3IFKE46GIHDLKPS 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 08/19] bootctl: Provide passphrase and message objects in the expo 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 Set up a textline object to allow the user to enter a passphrase and a text object to display messages for the user. Signed-off-by: Simon Glass --- boot/bootctl/multi_ui.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/boot/bootctl/multi_ui.c b/boot/bootctl/multi_ui.c index 11e5a46c911..f4f0bd281fe 100644 --- a/boot/bootctl/multi_ui.c +++ b/boot/bootctl/multi_ui.c @@ -143,12 +143,21 @@ static int multiboot_set_item_props(struct scene *scn, int i, scene_obj_set_pos(scn, ITEM_LOCKED + i, x + BOX_W - BOX_MARGIN - 24, IMAGES_Y + BOX_MARGIN); + /* Position passphrase textline at bottom of box, hidden by default */ + scene_obj_set_pos(scn, ITEM_PASS + i, x + BOX_MARGIN, + IMAGES_Y + BOX_H - 60); + + /* Position message below passphrase, hidden by default */ + scene_obj_set_pos(scn, ITEM_PASS_MSG + i, x + BOX_MARGIN, + IMAGES_Y + BOX_H - 35); + ret |= scene_obj_set_hide(scn, ITEM_PREVIEW + i, false); ret |= scene_obj_set_hide(scn, ITEM_BOX + i, false); ret |= scene_obj_set_hide(scn, ITEM_VERSION_NAME + i, false); ret |= scene_obj_set_hide(scn, ITEM_VERIFIED + i, false); ret |= scene_obj_set_hide(scn, ITEM_LOCKED + i, !(bflow->flags & BOOTFLOWF_ENCRYPTED)); + ret |= scene_obj_set_hide(scn, ITEM_PASS + i, false); /* Hide key in multiboot mode (not used with mouse) */ ret |= scene_obj_set_hide(scn, ITEM_KEY + i, true); @@ -216,6 +225,10 @@ static int multiboot_ui_set_props(struct udevice *dev, struct scene *scn, scene_obj_set_pos(scn, OBJ_PROMPT2, MAIN_X, 180); scene_obj_set_halign(scn, OBJ_PROMPT2, SCENEOA_LEFT); + /* Position passphrase input at bottom and hide by default */ + scene_obj_set_pos(scn, ITEM_PASS, MAIN_X, 750); + scene_obj_set_hide(scn, ITEM_PASS, true); + scene_obj_set_hide(scn, OBJ_AUTOBOOT, !lpriv->opt_autoboot); if (upriv->logo) {