From patchwork Sun Apr 19 14:31:41 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4544 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 4613E40D1C for ; Sun, 19 Apr 2026 16:32:59 +0200 (CEST) Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-488a4c29ce4sf1811275e9.0 for ; Sun, 19 Apr 2026 07:32:59 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776609179; cv=pass; d=google.com; s=arc-20240605; b=QmvHDnfSo0nhWh5xp3MBTVtQt20OR8ssWX1JglBVJYLeRc5DK+LgCpgY8X0CpplfEN prXWVeB3LjFg5y/DiJurZYa1sL26JFyZ0XRnMxVxl0FT8+YocMPC8L3K/uOFDPToW3rV Wufhw0J5bzx+h4xAtD0GyvbS7+QMqMNXH4K9W7WkxUb1YCnaAVcaZV/IoTqVND84LQsb cUUE3eNMhFjSgC/pUl3YiUsktQRNwNSKXxF9QDj5XOyhlxnUoEoy8tQTJI+6P/Uwbwyi vFE05gTCly6oU642o0GpF1qTo76EEZI9tt44J5CpycbGHQc0LApUFZPX1YyJ147hzPuW g4DA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=ZIzOJJFletaonBorIumd6+mkNx+CdGdQPYA03MKdaNU=; fh=oJZZODt8/uzH1dwvUdjYp3RbQP08p/4k1qgB6dNoF58=; b=N5VquuXgoMSaB15b/i1XKGoXS0ucbjzFC3ktxyWkKLQ86NB/sQR8hSIaGPoOs/engi cz6RF4yesJKquFxSlCF8tRhSa0Zzul1vlVO4SKcbOK+aN7Qg4s8D7KgJoeF/Pw840yvS VHwctzXB4dlCKFFifVfQzoIxQ0xMI+bNg8cXBP14d0G9gH1WEWJAQKrbXMhNvmyhwuPd AnmRri9omqSPurpzwWgl9urv0HvQ0vs7FSqR3veRpQTwDRXdAmab4cl68W/1m/DeXtyP +wq9VP1EabqIvjARsBP1i7mcFbuRPel/tQ1doMQYxwLZHyCDPMIhJz+PyDpEI+DEG6S+ RMnA==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Jx8iBqEL; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; t=1776609179; x=1777213979; darn=patchwork.amarulasolutions.com; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=ZIzOJJFletaonBorIumd6+mkNx+CdGdQPYA03MKdaNU=; b=LDWVhCMyfirnjAsO7G3BhvnTlNNflgWhg2Cgb6d5lvdnJ1QY6m2bPSJXd/G+3+fGiL FuJ3es3IaqlvilUjIdHYzhGMGd6MqatFV9T7UkSJzUQuJkWSplJTWAt2H5lyxnIyXgMO DwCLBeMVqBsUBO2R5LSPRdiAOLP1Xaq5BwJQk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776609179; x=1777213979; h=list-unsubscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ZIzOJJFletaonBorIumd6+mkNx+CdGdQPYA03MKdaNU=; b=EVBFlTmgmPq07rOL6YoITBDMr5GvgwarkuQW9mZVyaYI8zIi0A7t+yQbMK/JONrUUY 1XJ0y1RemMUA+vy9NsLLi8a63as7EjyAER4HacetXYgAaDhgpM0cDN7dyVQN6a6mHhjS RdYKICbp6SNDUvMNHLnTFuIfUl6Hr9Uo4OpdZxKhLa6Lh2NyE6Ee9yacKLhG9AabuqJo qO7pkRGKwSuPYt3i2uTIjtlNxVs8RqlGKVzrcz7xCJg1ehh2WYkOyKhufzLmnRA90Cxu aVaOcruE1pZ521Vyf//LwcIa1C4DVzIIpsPMI0kmnmZjg6PeJ3oRGWJj7dXd6mXizM4p Pixg== X-Forwarded-Encrypted: i=2; AFNElJ+QHQ8wBsp7e3RwN3+5EcsO1L7dxJyinM7MYrxDZz+pvDN93ZsS8cy9f3g05XB+eOn3GlPQ6woezSzCGuTk@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YxJft+nlnCx7prKW0K/eBaH/hE9HofiAdWbXwftkjliOa9rRzqt jzTtiqfY8YVG++H7GCNKvA7A0iKuKX/FVZv92rWfVUPlB+VF1A9zAsDZVwPX2pHCegh9QQ== X-Received: by 2002:a05:600c:3544:b0:488:93c5:4dc with SMTP id 5b1f17b1804b1-488fb773f1bmr76420485e9.7.1776609178864; Sun, 19 Apr 2026 07:32:58 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiKENAySJGaNUc6yLfQsnj4l/rPx93+DMEHXQrlWp2fnnw==" Received: by 2002:a05:600c:310a:b0:489:1b02:7d07 with SMTP id 5b1f17b1804b1-4891b02977dls1579285e9.2.-pod-prod-04-eu; Sun, 19 Apr 2026 07:32:57 -0700 (PDT) X-Received: by 2002:a05:600c:6286:b0:485:3f1c:d8a1 with SMTP id 5b1f17b1804b1-488fb74a677mr146159455e9.9.1776609177084; Sun, 19 Apr 2026 07:32:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776609177; cv=none; d=google.com; s=arc-20240605; b=IbVm2mYDsWyTL/0P/izrIyI674OXKwlpTz9mhawKQevz0GnKWjuvquxt2s+PgKys/A e8/5NUrop6eLZy8gOVzIHYb8hhho/g/pV/Z98zaynhlljsjj0vROwyZ8eoC+s/bkvtoI C4EpOvGioHTUpX+c83eabyuN2hm5q4vRRQLXIl0K5j276214jPhpbZSuGArsjBl/9SMs 5YmBuKQw1sL+sMd9zM+S72GaeyVhLk4TggYYbKlMznJ/itSW+SvR2Q0k607r7ZffAs5t YnNzC9TJhIQDDSJTNq8D42ZnFBqAUtzCbu/jl3P8yKuTummRYdvMhRTgBtvvBO0aJCZh v8rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=7DKsi4pzYyQDOTb8zo06i67V2qb9y1zARBTwXnfbWaQ=; fh=DgSNEHkI+k06nk8mDZFRveritGH++LuSPtF28KDFn/A=; b=DGMyo4DrCh2pYek1LlR/VFNkFdVgpuLjqAIFUcI8CycFqHvaNfulipYLwbKPRiC1H6 C84pwZLq/eQWXrB4GyrYVXw0+jnPzenpQN001AWQ9PV3TdB3Y03AEa6QU9yQLrDMYk0x lS6fWAoqsckEO6htEPF4oxvzghGXWnwR3YJlUCAryvKj0Jo9PApBa8LwfyNFEX8hpjWH XPgU2AZrllq7hdOfE+8+85X/0c3z7MBrFBzslht48uo7lL0saDcJsYaRbFxsP3BBfKlJ Ve74S1CCPgQyIQ3z78V1d3PaOlidPXkB4q6qFzU4JD1Xgrlf4jiHqhHY0RctBIzvMsvs v1EQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Jx8iBqEL; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id 5b1f17b1804b1-4890933ff2esor2936525e9.0.2026.04.19.07.32.57 for (Google Transport Security); Sun, 19 Apr 2026 07:32:57 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Gm-Gg: AeBDietaKh3FFgBddgIN9NKQAQNdCUIeIfLQEZlzuWLulsx9jS9jN88MuxhH0V3bRv3 om48rCEgMZ+midXxNhGji3jjGbRMSTPmJTUcjsYitVwwaA9DQN19cdtBeSrMzVO2KKJNT5uYGkQ u/II4+NjBD36Er/BSYhsIrx4HqaW9uXgOUOB20peaQRgrBw/LTGByoG1wE+JLzBnIQB6LeJ6ExR 9RklYom1I0rXCOeV6KN/GlzLSNiVO1BXFc4MZJYUePwjdtTTp2WZbt3YHp8iJfi6fw7RyuoIcQs QluhEsNKm6SPOnFkQZUiVTg1xCbuXrXALsBtH0A9rykzOiyltZu4BSB8/XhVN+TH6xY3AVHzf8N 7DnMkz6MSukHbk2uRDvuORZWeBDJYQZ43SJlnPL4p8NXg8JkO7PK0sGGphrTZzkKTjiAvezdH5I jjMTtX59Fm3Raj6MIiNkL6+r8TpbMIRBNhdH8QAfp+SxPjQrL+x0pIXNoi7JJvRW4bzLrNm9tb7 kY++XhgEo5ABmDX9SWo6GL9z4ijt2wo35q3kZY/zF9cQcTIfgwRhsSpS71SzbQ4KohHga4DrVTp PfwT/z1nJh+SRSfgQcFvoGHlVkldtyDt X-Received: by 2002:a05:600c:8b84:b0:480:1c69:9d36 with SMTP id 5b1f17b1804b1-488fb76e4aamr155501975e9.17.1776609176620; Sun, 19 Apr 2026 07:32:56 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.homenet.telecomitalia.it (host-79-20-97-39.retail.telecomitalia.it. [79.20.97.39]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488fb755938sm86864245e9.3.2026.04.19.07.32.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Apr 2026 07:32:56 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Simon Glass , Heinrich Schuchardt , Ilias Apalodimas , Javier Martinez Canillas , Jerome Forissier , Patrick Delaunay , Tom Rini , =?utf-8?q?Vincent_Stehl=C3=A9?= Subject: [PATCH v4 1/8] lib: uuid: add partition type GUID for extended bootloader Date: Sun, 19 Apr 2026 16:31:41 +0200 Message-ID: <20260419143247.437733-2-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> References: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Jx8iBqEL; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , The Extended Boot Loader Partition (XBOOTLDR) is a standard defined by the Discoverable Partitions Specification (DPS) to host boot loader resources outside of the EFI System Partition ([1], [2]). Defining this GUID (bc13c2ff-59e6-4262-a352-b275fd6f7172) allows U-Boot to correctly identify and label these partitions using the "xbootldr" shorthand. [1] https://uapi-group.org/specifications/specs/discoverable_partitions_specification/#extended-boot-loader-partition:~:text=UEFI%20Specification.-,Extended%20Boot%20Loader%20Partition,-bc13c2ff%2D59e6%2D4262 [2] https://uapi-group.org/specifications/specs/boot_loader_specification/ Signed-off-by: Dario Binacchi Reviewed-by: Simon Glass --- (no changes since v2) Changes in v2: - Add links to the XBOOTLDR specification in the commit message - Add Reviewed-by tag of Simon Glass doc/README.gpt | 2 ++ include/part_efi.h | 3 +++ lib/uuid.c | 1 + 3 files changed, 6 insertions(+) diff --git a/doc/README.gpt b/doc/README.gpt index 386ac2e0fc8f..a6e1fd7ce8d4 100644 --- a/doc/README.gpt +++ b/doc/README.gpt @@ -286,6 +286,8 @@ Some strings can be also used at the place of known GUID : (E6D6D379-F507-44C2-A23C-238F2A3DF928) "u-boot-env" = PARTITION_U_BOOT_ENVIRONMENT (3DE21764-95BD-54BD-A5C3-4ABE786F38A8) + "xbootldr" = PARTITION_XBOOTLDR + (BC13C2FF-59E6-4262-A352-B275FD6F7172) "uuid_disk=...;name=u-boot,size=60MiB,uuid=...; name=kernel,size=60MiB,uuid=...,type=linux;" diff --git a/include/part_efi.h b/include/part_efi.h index 2cea50880465..5713b3018f42 100644 --- a/include/part_efi.h +++ b/include/part_efi.h @@ -60,6 +60,9 @@ #define PARTITION_U_BOOT_ENVIRONMENT \ EFI_GUID( 0x3de21764, 0x95bd, 0x54bd, \ 0xa5, 0xc3, 0x4a, 0xbe, 0x78, 0x6f, 0x38, 0xa8) +#define PARTITION_XBOOTLDR \ + EFI_GUID( 0xbc13c2ff, 0x59e6, 0x4262, \ + 0xa3, 0x52, 0xb2, 0x75, 0xfd, 0x6f, 0x71, 0x72) /* Special ChromiumOS things */ #define PARTITION_CROS_KERNEL \ diff --git a/lib/uuid.c b/lib/uuid.c index 3a666d0430db..d7c164ea06bf 100644 --- a/lib/uuid.c +++ b/lib/uuid.c @@ -86,6 +86,7 @@ static const struct { {"swap", NULL, PARTITION_LINUX_SWAP_GUID}, {"lvm", NULL, PARTITION_LINUX_LVM_GUID}, {"u-boot-env", NULL, PARTITION_U_BOOT_ENVIRONMENT}, + {"xbootldr", NULL, PARTITION_XBOOTLDR}, {"cros-kern", NULL, PARTITION_CROS_KERNEL}, {"cros-root", NULL, PARTITION_CROS_ROOT}, {"cros-fw", NULL, PARTITION_CROS_FIRMWARE}, From patchwork Sun Apr 19 14:31:42 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4545 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id D77083F1C5 for ; Sun, 19 Apr 2026 16:33:00 +0200 (CEST) Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-43d7c6d58c8sf3073265f8f.3 for ; Sun, 19 Apr 2026 07:33:00 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776609180; cv=pass; d=google.com; s=arc-20240605; b=LIh/F3aaryDB1RCcFM2ajaWuQ7oavRiatYul0NpTSjlvlDI6tXtvxdHKlsRrdj+M5P zPjzzhSDbwvaFfoHZZ5BFagiyxDn1tC187HrZanz/HNt+ADEACe3r5+ZF/KT30baGrbP bISMBY9WIB0ZfBTo63YY134hF/D6fAS41tTrMndLy2vJoqHppTGT0UMGMnsRr2VGpXFZ aJQ0Y85/cvbWonKovVUhfrp/mrRpOgeVbfpJM27AEvY81blNVI6/g/6BJgAaTCDklPJb gzd/RE+HjQk0u4vqujShBP8GNn3JcV3ohBVdnVhRn5e0CCIMuftiXOdmJMlsA/XaUaNb FOGg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=LqZiU4CCfu/BPkTAIvBDsRpZvwufxhM3alKg16baxhI=; fh=K1EBZyifiTwUzngYypEznZy2h0MSvy6ZXMZGKvfO+X8=; b=gXBL6NJ1BPlwip4EgPo1O5m3NDVCUJ0yXILp+/axwSxxCl2QrCxdNTTCyNGhVl48L0 QkN5pNzyYvJ5tJKmLWcW9XEilgoGuwB/1yAUss9/QYNOaWdzlAH7cWf8CKA5hNtYw19x XqeMOCY7KOd6LRohKWiGC/e6PTmY533rnLlBYJnFoX2EUcKUrjmtrMPitz4B/SmVkVdL /Wjdi1HpzFoTghAl/47MFjCg59fuZHBT7BEPduTOfp+/h/1aFTSrVRaFnQ0zxRmBG4rx TMtxN9fA3cDQmhkRK85UwjxR13wzkloZEtn4hfhZMUJL1ql3ZHWUIfBDUMrwuI52DVbH 8p/w==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=pjrgJFXA; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; t=1776609180; x=1777213980; darn=patchwork.amarulasolutions.com; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=LqZiU4CCfu/BPkTAIvBDsRpZvwufxhM3alKg16baxhI=; b=pj9/kfhK2Y4U5tMalFtup1S7V1yBNRzo7XI8rFn2ZZ1XCivG+xJpInroztXKaiHiok aOhnbo2ePap+lE4t7uW4aJYmWqX+IDPp/p5/DL703miA+cVdu0nOaKxn7bKppSjVr39L 6AWrgtFoJaIUt/znb64H2CYd0jthGKWu/2IS4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776609180; x=1777213980; h=list-unsubscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=LqZiU4CCfu/BPkTAIvBDsRpZvwufxhM3alKg16baxhI=; b=QnNak9RsXlf/sgK2kpPrrGk3Zso2huifLSjQjTGzpOX+QIFRVKGQmxaxHI8pbq3hqe r9rgDbHXts3jpZqqvhBA0cYcsVsJ+479fFKiDwiu1S3WCrl5ocUP2nMfpCisWpBcy47R 5KikycntirMRhNmplXoAnurIujY0kYJ0A9AK9+z3tOl9HuL/sH0cw6WcveKjCOHs5aiy c1zyelHnjCAXNiVQxvT39DthL4Zag8ZvWJq8FQcXM8TkJQ41+YwKHlQUGnGpMmvjs/ad 1zM2gBBWYgEhicmQbcL44r6HXQQjhEN40/amkX519D7NoqgZqNQkmNeD6ndUFrcSV/qh ZsJw== X-Forwarded-Encrypted: i=2; AFNElJ+UsM3gbIGA3MgXIFSt3rcQLbJBNunZczoxcIQ2QrwIOrVS31Ddk3WumQYxpWlZjYXfaNnRrMEMZ+C25dFI@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YwsdJ34/BJc/azsctfNJQMMauVmmsElcfMBLGbp7KCemXzi/ExZ kwucw2BaZYb96lE2kpyF+3SS2XI5SDR5Y+zspWF1/WyQFPpjQ5pCa76PewqzTsYIMtRtwg== X-Received: by 2002:a05:600c:4687:b0:485:40db:d40c with SMTP id 5b1f17b1804b1-488fb73d7e9mr150255775e9.3.1776609180180; Sun, 19 Apr 2026 07:33:00 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiKMhEHjY8U9XgXWnVIvozatsHvgb8QNdhyQy/qL09SrDw==" Received: by 2002:a05:600c:548f:b0:488:ab54:fc08 with SMTP id 5b1f17b1804b1-488f4a77b0fls39123325e9.0.-pod-prod-02-eu; Sun, 19 Apr 2026 07:32:58 -0700 (PDT) X-Received: by 2002:a05:600d:8449:b0:488:a2ac:a34a with SMTP id 5b1f17b1804b1-488fb74a8b7mr128094195e9.10.1776609178370; Sun, 19 Apr 2026 07:32:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776609178; cv=none; d=google.com; s=arc-20240605; b=iv6Zz16loU2gH0WCPV0EnI9X7iHWKiD6gOii2htJ+W4mzaIyRztqUJWEtoJXZsLWt2 /IB+plMF47MqR7Vqu3jBg/gKCM/Bmb2sn2zfIAOL9aHsIqYwvOiaRuCKK1OtIALh4q5R uREw+qyg5ZxkijHHDXE451DB3BWcyztP3oPILb4DfSjJZIyJ2/gVE1G7IN5Cv5m7f76L T7R7+cJNgG49iUjAa1ISEPpXABEJ3EBGTEz4cqCrXeR+q6Aagt4LrXkg4PltvFfTvHIm VjzGCVXtFUyVYaQvBqbUEslF9IMnwjvtC8pviyYamSEy/dtn/rTWNA2n84hVC3l39pbj 0lxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=j7kw4CvLJkX2EjGaympe8ZZB0RtPYp/BO11dE+j3/IY=; fh=SMPGxW/KHFhQHxzd6fQZDt2aC0c5400YFwKZgkeAPhk=; b=jD9hHkHfCMlZTlA1usbMqSJhVRmoAYdFn83y3VhjAHXPvux1/UrvRc91pLdt1xo2XT BDsoZ9+jT5eLqnSm0kfx6InWbvlkFENlfusWvYiWP0Bj8DBtBZv9eG7bM10V8puTLUHP Q13Azm/6TrNaK+NXY8vFrjF7JclBE8Y3XS/5MddtmCSkiS5kv6iqjRbG7cny59Kq62ED p8RkEQ/GMYKJjzu1kStKdbFaeNvTMtDau1TzgoZmkgiwZTHhucSJIURI5pkyEfZgZyS3 evioz0abNBSobmtPYZ5Xj8DGiCbAFVRQzadpdzPYZetTM9lOY6VN/qynQaurHfOxSKrT spiQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=pjrgJFXA; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id 5b1f17b1804b1-488fc14cc0csor12402575e9.21.2026.04.19.07.32.58 for (Google Transport Security); Sun, 19 Apr 2026 07:32:58 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Gm-Gg: AeBDievauSEr91cpoFuX0M8XDtuddR2pVOLd7oNcwZwyJlXMNRk3lJ2Op2Fq/DXGmyF 88jNy6LaRzkxFPlTJk7gg+ailYsbQskVpsU9ryUq8NsY/V1vUCHXhyO+D1MG67V9H3ELPgHdtpd IKRIMXbjABdtbQEXwG5ady7LtITZU3UxETbSCGV1repKkTifL+8fFuqf/KZyxAtAagaAc4fzGCK CAFQyq+5ov9sNZd+SWtZnr743e2ZIH8ux/UZPlwG07IXS/WAizyRnpU3Blc2qilyrBXbkizHOk0 M31v9XG+zCu6f27FlxV55yMBQYhZI8P2oUDCU/tg7OcgzLXgfQy5ogJEw4xy5tI7lEDh0wvp4yC ei9acxWVtsk1fRC9B6yHh9dih+f9Q5G6b6d+Zhu6TZ1ikFrTqlC0dOwA5SPe0Q9T3fj8aCgjDKJ 0bOr/mHdVp76RoSMhQ1ZYdzBaYTAzfX3+QbRqFKcQGkEOBQ01d6gDloGRmkB0cBhPE+0cziifKv YjL9u+skaPKalIH9e6iV0LDKZBdUNjjHysKFeBHDqSCWiil1XX6DW2mQ2dszLNjM+doeB6bndRb M1U3uxz3ai2yIEyZeZx/LAGMsgx7XXjM X-Received: by 2002:a05:600d:8449:b0:488:a894:b27a with SMTP id 5b1f17b1804b1-488fb74a8c2mr124692015e9.8.1776609177967; Sun, 19 Apr 2026 07:32:57 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.homenet.telecomitalia.it (host-79-20-97-39.retail.telecomitalia.it. [79.20.97.39]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488fb755938sm86864245e9.3.2026.04.19.07.32.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Apr 2026 07:32:57 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Simon Glass , Jerome Forissier , Mattijs Korpershoek , Tom Rini Subject: [PATCH v4 2/8] test: dm: part: add test for part_get_info_by_uuid Date: Sun, 19 Apr 2026 16:31:42 +0200 Message-ID: <20260419143247.437733-3-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> References: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=pjrgJFXA; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , Add a new unit test for the part_get_info_by_uuid() function. Signed-off-by: Dario Binacchi Reviewed-by: Simon Glass --- (no changes since v3) Changes in v3: - Add Reviewed-by tag of Simon Glass test/dm/part.c | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/test/dm/part.c b/test/dm/part.c index caae23bd4aad..ad37d7f406f4 100644 --- a/test/dm/part.c +++ b/test/dm/part.c @@ -195,3 +195,56 @@ static int dm_test_part_get_info_by_type(struct unit_test_state *uts) return 0; } DM_TEST(dm_test_part_get_info_by_type, UTF_SCAN_PDATA | UTF_SCAN_FDT); + +static int dm_test_part_get_info_by_uuid(struct unit_test_state *uts) +{ + struct disk_partition parts[] = { + { + .start = 48, + .size = 1, + .name = "test1", + .uuid = "c5bce7a2-03f0-4d03-9048-01ff23b9d527", + }, + { + .start = 49, + .size = 1, + .name = "test2", + .uuid = "9df346e8-2c53-4cd8-b9ac-3af83f9a9b74", + }, + }; + char disk_guid[UUID_STR_LEN + 1] = + "8d60b397-1bb6-4d33-80ee-b1587d24c2f8"; + struct blk_desc *mmc_dev_desc; + struct disk_partition info; + int part, i; + + ut_asserteq(2, blk_get_device_by_str("mmc", "2", &mmc_dev_desc)); + + if (CONFIG_IS_ENABLED(RANDOM_UUID)) { + for (i = 0; i < ARRAY_SIZE(parts); i++) + gen_rand_uuid_str(parts[i].uuid, UUID_STR_FORMAT_STD); + + gen_rand_uuid_str(disk_guid, UUID_STR_FORMAT_STD); + } + + ut_assertok(gpt_restore(mmc_dev_desc, disk_guid, parts, + ARRAY_SIZE(parts))); + + for (i = 0; i < ARRAY_SIZE(parts); i++) { + part = part_get_info_by_uuid(mmc_dev_desc, parts[i].uuid, + &info); + + ut_asserteq(i + 1, part); + ut_asserteq_str(parts[i].name, info.name); + ut_asserteq(parts[i].start, info.start); + ut_asserteq(parts[i].size, info.size); + } + + part = part_get_info_by_uuid(mmc_dev_desc, + "00000000-0000-0000-0000-000000000000", + &info); + ut_assert(part < 0); + + return 0; +} +DM_TEST(dm_test_part_get_info_by_uuid, UTF_SCAN_PDATA | UTF_SCAN_FDT); From patchwork Sun Apr 19 14:31:43 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4546 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 45A813F1C5 for ; Sun, 19 Apr 2026 16:33:02 +0200 (CEST) Received: by mail-wm1-f71.google.com with SMTP id 5b1f17b1804b1-48919890a95sf1814635e9.2 for ; Sun, 19 Apr 2026 07:33:02 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776609182; cv=pass; d=google.com; s=arc-20240605; b=ecSb4JIa58MN4jTzahflM4eZVFa7PLRKX07uGFPQd4Fit+x3W4fqo2iGrzMuW5H7YD a7+WFHLbhdfPWddeg7WAAIln6/lTW+QS781iwwo7EFIay/3xHMHLKWeQTCmH0CDWLpb+ tp0s4iaT2C1I9OhCQjXbjvi67teEWyAMRhziGFXIKvBcA8OJ6EL8J4fo64QykEJtoTSp 53obEdKieZBewWYam4xQAAaGVRLeHgdp6D2QHZiFC85lp81XNLHw304tw5Ggti55Q9SZ heR2UgCQyUDfBhaA6WqgYHOAiBN6eD2MMniNJj3fAcEtCNf2gSFd43p5X3jmMgYr2evl E2fg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=zcVkAgVVERu0h0QdfCXZnYK8PhRktPzzSQXuJVB3x4c=; fh=1KpaaYzzeQVVjzct5mc84QK3FjWE01P3l9IOT7q/cQk=; b=gavftTCVnw5gTb9k5uoGt6R1XkKVAWGBV+TqLtbIMauF5MLhGN/oPpw9T46iBuCTYh cvGdP8p+Ium2HaXX05/QxrbOlylcoku8QFWPZgBRokb02vD8crKgBd0rUvyPaQyxwWA4 UqBqREtexvO1jRMia5vpCPga7Xphkbc7JAIut1bvHjbWMvF9jDPHsWVjLLZOSRphQaE7 8Tz5zIwyyahbcBbCYEqlSqx+qqa2CIQz8Qv/SaHcEQya2Gdd7MCyLmFFkomewLUpvovF FqAfmRx56q6FwzyqyYCeMDpcE0GB1+vR/wheqxhQvPAqjgpa/0HD63RVWfIOFsvWRedM lwZg==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=XqQ1d2YJ; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; t=1776609182; x=1777213982; darn=patchwork.amarulasolutions.com; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=zcVkAgVVERu0h0QdfCXZnYK8PhRktPzzSQXuJVB3x4c=; b=DokO9/IwRmT8uFOKTz1rLqtrtFPL+Amx6UA6CPx8+uyDn4Uw9hFyX16j1CLkCLRX/4 TlqF64hbEbMrDbKOyLr5smHGXGFv1wGguelO0XtJeTN75HW9wrbm2uPPI8h/sV4uwq/A 7/uFlOqyDMge1AUG3e5kaAuHxkxmPHjIXxkOY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776609182; x=1777213982; h=list-unsubscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=zcVkAgVVERu0h0QdfCXZnYK8PhRktPzzSQXuJVB3x4c=; b=PyoyORBs6Hs5/sp2M3rruKQpU3rl7OWEfshP9q4SkZpYqCr1rhoZBdXxGUAXqVUTTt uq6gkELVn1yMzvXiBqC2kANRGFZFi0MEMEqMj8LBQinNwnkjkEphHU8Zrs885ECpxPAh ChGQck7/pNr+/7IUYY0tBTopdMGoFPTF1uyYiTNjjm+zNF+ELqcmMfPpR9WxojOaiz8p 1+YiVzeTsVKInmrGWmxJCAi+jQAHMRQB0jfcjbbJzpksRq0Vwkxia4bEw/v9GkIRbXx/ 3fWkNRZkOCMGNTm2zKsjlprTtBBiE/yXyph9TDLi8sj/fr8l66j/JmN+2dN3uBXmO+v6 2WOg== X-Forwarded-Encrypted: i=2; AFNElJ/BaxkNwSO4otwaq2YWwo1FyH/Kmqzva3Y51LxWaagUdtmXKWK583JfTm0mUvcV7ZsktoP9qSGqOSu9Wy5K@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YzKGw1unzxmi6dNpRPMi7BWzfM9I+0nRG+IKhDLVnQ9edemgvM0 Wt6vQFVsA/Wtu99L8w5ZjM1CLc0ARFy8CG99X6TVR2BePgh2YS73YVL/iWV00H6mW5OHKA== X-Received: by 2002:a05:600c:314b:b0:488:c282:e78c with SMTP id 5b1f17b1804b1-488fb77870fmr136332135e9.19.1776609181810; Sun, 19 Apr 2026 07:33:01 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiJIpekY0NsRZqqRH4oIb4xrhpuKyqnIOg2M//yDKrRYtg==" Received: by 2002:a05:600c:a404:b0:485:2e9c:9e81 with SMTP id 5b1f17b1804b1-488f4b0f219ls23539325e9.1.-pod-prod-09-eu; Sun, 19 Apr 2026 07:33:00 -0700 (PDT) X-Received: by 2002:a05:600c:8883:b0:488:def6:bb17 with SMTP id 5b1f17b1804b1-488fb73a9admr105249575e9.4.1776609179896; Sun, 19 Apr 2026 07:32:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776609179; cv=none; d=google.com; s=arc-20240605; b=Mac/UmwMRK5yAyBn2A3IhSRpmPT/Xzmgc7EYbsdWvqfdyoqZdKAeXsEd0oO53NILwA pbwZM71pRHmcGRXlAwoFrb9n8gNwOp/Od1cbsogZoZoC8Ms1NBYqr7rAYHdGueL+dieD ox5IYx2/p0Zqp/HohdFYtM+nLsmNh/yWzXhbZHeLnfa4X4/fYSIKtiP9BjQXmIou1irR W9CN5Dl/zswlvEP19OIlkONvlm07dzkk649R7pM09e9f4IhER7Cemopi3E9H2WK46wJQ NQ+LNkDTCrwrC1Ol0sKslm8TVFNeneR2dbzsRIX/W8+M1UZGcIvG+aBQ5rdOlmC4psPS stiw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=XrEW8/GmuolZ6LfZLeU2A1pEJlVh9Abz0s17fte4kSw=; fh=RZGImzu6ftZpi4dmMFwfzq1sNXp2pyK8hGxeDmyW+LY=; b=AuTqdihypRz+4DO5AseC30n4+PQ2rQ6J3JtLNQx+Jw9i9RQijgLZLFjK+7ZyptmXKK n/UBQ6lIU9kqevwgpbPVl1GZnlYKNnhdqqcPP/71gOAG+XAEktG2SbxMROHYAVTVects hEERU4X+HlRaklDnNc1+W2ZKnr+ZbomWQlybjyT+TwEcKQ5tHSYgEIxlsdZ/u/OmhxaJ Qyw1Tgz9hc/Dxj8gxygXNqkl6hP14vH1F+ZgvcLsT7sWh7fNVvNUhdCU5X7eOETSQKSv sVE4ejMCBrjx8InQqe/OeDhLD4En4y00uvkBnSmpE3f0GZSLMRuYu5JmuEprESL7YlEP tI0Q==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=XqQ1d2YJ; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id 5b1f17b1804b1-488fc16ac60sor8638735e9.14.2026.04.19.07.32.59 for (Google Transport Security); Sun, 19 Apr 2026 07:32:59 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Gm-Gg: AeBDies5UcCWw3Zm1vC+4wtWO1T8sZChPv626KcSeJak2b0OPROSOgcadZAoRKI3HQI utVXRL2/TUw4Vg55lLF7UbM8kw/PHAeotyQUhuHLdoXsfavJIm8wqAdV4AiDquzTGUDzN6aj8ES Su/a0exnqY3CVSA1uBZUBJKekKvZTQJVr5M7fw+wmPhNr0s4M4A8ckiZ2PVIWzxkWMN0m342eRM N5r2kufspVsvQ9Iv4apl3jHPwJiZdnljGg59QKUe2MOhU9uLhJwN3QXSQbWI1fDeldrBpejWrMc G7oPvT5ICv05RMu2hBDH6opkgW8DUPK79jWvIQtcnNJKVNd/BLpqf2/cknjiRX/aqxHtM68+7Qx hR492BKXU1LFZUXhm9+LgSDg8h7zb11e71uCIU3n3xEcapKw5hbf80U58b9J0WO5MuStpgbPy3o 5uXeHPWvHQO5/LlY4Fr5UIzFrJG5+Hj1M9qsVLA7UarjAdzP494F7Dv0itFABSEwmS2NWY9yhFj NYBqg4StKu/2utKqgqcpHVJzr7IBQa259LzpULdUxY30uqEXZoPxrL9Y7wAzxPtVgjdpYPwM2Tq Zh8yA0PVZz4wHgcIx2aw5mt72+Y5WflT X-Received: by 2002:a05:600c:3483:b0:486:fba7:b150 with SMTP id 5b1f17b1804b1-488fb7787d7mr130991635e9.15.1776609179412; Sun, 19 Apr 2026 07:32:59 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.homenet.telecomitalia.it (host-79-20-97-39.retail.telecomitalia.it. [79.20.97.39]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488fb755938sm86864245e9.3.2026.04.19.07.32.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Apr 2026 07:32:59 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Dinesh Maniyam , Heinrich Schuchardt , Ilias Apalodimas , Jerome Forissier , Marek Vasut , Simon Glass , Tom Rini Subject: [PATCH v4 3/8] test: cmd: add unit tests for part command Date: Sun, 19 Apr 2026 16:31:43 +0200 Message-ID: <20260419143247.437733-4-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> References: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=XqQ1d2YJ; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , Add unit tests for the 'part' command, specifically for the 'number', 'start', and 'size' subcommands. These tests establish a baseline for the current partition lookup functionality by name. This foundation will be used by subsequent patches to extend the command, ensuring consistent behavior as new features are introduced. Signed-off-by: Dario Binacchi Reviewed-by: Simon Glass --- Changes in v4: - Place the part command tests in the cmd suite rather than the dm suite. - Order the include files according the U-Boot coding style. Changes in v3: - Wrap the lines exceeding 80 columns - Combine run_command() and ut_asserteq() -> ut_asserteq(1, run_command( test/cmd/Makefile | 1 + test/cmd/part.c | 165 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 166 insertions(+) create mode 100644 test/cmd/part.c diff --git a/test/cmd/Makefile b/test/cmd/Makefile index 8c9f112782d0..41fe21a4541e 100644 --- a/test/cmd/Makefile +++ b/test/cmd/Makefile @@ -26,6 +26,7 @@ obj-$(CONFIG_CMD_LOADM) += loadm.o obj-$(CONFIG_CMD_MEMINFO) += meminfo.o obj-$(CONFIG_CMD_MEMORY) += mem_copy.o obj-$(CONFIG_CMD_MEM_SEARCH) += mem_search.o +obj-$(CONFIG_CMD_PART) += part.o ifdef CONFIG_CMD_PCI obj-$(CONFIG_CMD_PCI_MPS) += pci_mps.o endif diff --git a/test/cmd/part.c b/test/cmd/part.c new file mode 100644 index 000000000000..5751dd315dd8 --- /dev/null +++ b/test/cmd/part.c @@ -0,0 +1,165 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Test for part command + * + * Copyright (C) 2026 Amarula Solutions + * Written by Dario Binacchi + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +static struct disk_partition gpt_parts[] = { + { + .start = 48, + .size = 1, + .name = "test1", + .uuid = "c5bce7a2-03f0-4d03-9048-01ff23b9d527", + }, + { + .start = 49, + .size = 2, + .name = "test2", + .uuid = "9df346e8-2c53-4cd8-b9ac-3af83f9a9b74", + }, +}; + +static char disk_guid[UUID_STR_LEN + 1] = + "8d60b397-1bb6-4d33-80ee-b1587d24c2f8"; + +static int setup_gpt_partitions(struct unit_test_state *uts, + unsigned int mmc_dev_num) +{ + struct blk_desc *mmc_dev_desc; + char dev_str[10]; + int i; + + snprintf(dev_str, sizeof(dev_str), "%u", mmc_dev_num); + + ut_asserteq(mmc_dev_num, blk_get_device_by_str("mmc", dev_str, + &mmc_dev_desc)); + + if (CONFIG_IS_ENABLED(RANDOM_UUID)) { + for (i = 0; i < ARRAY_SIZE(gpt_parts); i++) + gen_rand_uuid_str(gpt_parts[i].uuid, + UUID_STR_FORMAT_STD); + + gen_rand_uuid_str(disk_guid, UUID_STR_FORMAT_STD); + } + + ut_assertok(gpt_restore(mmc_dev_desc, disk_guid, gpt_parts, + ARRAY_SIZE(gpt_parts))); + return 0; +} + +static int cmd_test_part_number(struct unit_test_state *uts) +{ + unsigned int mmc_dev_num = 2; + char expected[10]; + int i; + + ut_assertok(setup_gpt_partitions(uts, mmc_dev_num)); + + for (i = 0; i < ARRAY_SIZE(gpt_parts); i++) { + env_set("partnum", NULL); + ut_assertok(run_commandf("part number mmc %u %s partnum", + mmc_dev_num, gpt_parts[i].name)); + snprintf(expected, sizeof(expected), "0x%x", i + 1); + ut_asserteq_str(expected, env_get("partnum")); + } + + env_set("partnum", NULL); + ut_asserteq(1, run_commandf("part number mmc %u bogus partnum", + mmc_dev_num)); + ut_assertnull(env_get("partnum")); + + return 0; +} +CMD_TEST(cmd_test_part_number, UTF_CONSOLE); + +static int cmd_test_part_start(struct unit_test_state *uts) +{ + unsigned int mmc_dev_num = 2; + char expected[32]; + int i; + + ut_assertok(setup_gpt_partitions(uts, mmc_dev_num)); + + for (i = 0; i < ARRAY_SIZE(gpt_parts); i++) { + env_set("partstart", NULL); + ut_assertok(run_commandf("part start mmc %u %d partstart", + mmc_dev_num, i + 1)); + snprintf(expected, sizeof(expected), "%lx", + (unsigned long)gpt_parts[i].start); + ut_asserteq_str(expected, env_get("partstart")); + } + + env_set("partstart", NULL); + ut_asserteq(1, run_commandf("part start mmc %u 3 partstart", + mmc_dev_num)); + ut_assertnull(env_get("partstart")); + + for (i = 0; i < ARRAY_SIZE(gpt_parts); i++) { + env_set("partstart", NULL); + ut_assertok(run_commandf("part start mmc %u %s partstart", + mmc_dev_num, gpt_parts[i].name)); + snprintf(expected, sizeof(expected), "%lx", + (unsigned long)gpt_parts[i].start); + ut_asserteq_str(expected, env_get("partstart")); + } + + env_set("partstart", NULL); + ut_asserteq(1, run_commandf("part start mmc %u bogus partstart", + mmc_dev_num)); + ut_assertnull(env_get("partstart")); + + return 0; +} +CMD_TEST(cmd_test_part_start, UTF_CONSOLE); + +static int cmd_test_part_size(struct unit_test_state *uts) +{ + unsigned int mmc_dev_num = 2; + char expected[32]; + int i; + + ut_assertok(setup_gpt_partitions(uts, mmc_dev_num)); + + for (i = 0; i < ARRAY_SIZE(gpt_parts); i++) { + env_set("partsize", NULL); + ut_assertok(run_commandf("part size mmc %u %d partsize", + mmc_dev_num, i + 1)); + snprintf(expected, sizeof(expected), "%lx", + (unsigned long)gpt_parts[i].size); + ut_asserteq_str(expected, env_get("partsize")); + } + + env_set("partsize", NULL); + ut_asserteq(1, run_commandf("part size mmc %u 3 partsize", + mmc_dev_num)); + ut_assertnull(env_get("partsize")); + + for (i = 0; i < ARRAY_SIZE(gpt_parts); i++) { + env_set("partsize", NULL); + ut_assertok(run_commandf("part size mmc %u %s partsize", + mmc_dev_num, gpt_parts[i].name)); + snprintf(expected, sizeof(expected), "%lx", + (unsigned long)gpt_parts[i].size); + ut_asserteq_str(expected, env_get("partsize")); + } + + env_set("partsize", NULL); + ut_asserteq(1, run_commandf("part size mmc %u bogus partsize", + mmc_dev_num)); + ut_assertnull(env_get("partsize")); + + return 0; +} +CMD_TEST(cmd_test_part_size, UTF_CONSOLE); From patchwork Sun Apr 19 14:31:44 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4547 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 0FE6A3F1C5 for ; Sun, 19 Apr 2026 16:33:04 +0200 (CEST) Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-48919890a95sf1814725e9.2 for ; Sun, 19 Apr 2026 07:33:04 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776609183; cv=pass; d=google.com; s=arc-20240605; b=O5OSoGMePncR3k1KVxQ6vND3wlFb1d5s2IiOaYzMlPze7vc9jsfgECt20YhpiVeTrs MuuADk3uqkufkt/L4rPKSikM1LzhZXAj2hWt8wuwdp5sWrOIdcTGOYpcF5bRIU1sLtvo wqN0jer5chUiU+RWtmkxv6o2Zl0ARz888JumlU7cjC1MODcAryVRa4EfuVvDsGfqAFyW sKRJPcCguDU9kinQl+o5J21Wd6uMpDyaq8eBzFfXbe+KUrcar4JfXJe3kS+Ry2nNobVQ xpJYvnkSDk903mPYQBsz/1WLkl1JVBw2Xmf3ziYOVW/mnuAT5LTV+qS9DTp7m3VrPkLv Q46g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=0lswNFhL5Ch2/NzX0+oc6kL4LZY9T2ZRa9x5yZJwVfo=; fh=oetup89fbwD8reMSgDFevO2qB1CuzNJBINVg23xulX4=; b=StLLOysbWUk+XSzbzukd9qYQg87Y4UDkOoUQqQWb8manJUDHRNl4qzldhGQlrsLSLd n4h6UMp88nuVsZs0cK/WOnxIMg0uA5r2UbbsJafw92ajnOzc3uWBMGQQDP7SpU84HNX4 oJJ9taMe/tBlK79VwStgbLVW0WNX07yGqgKEmIcQ6NLbmfHj8YNMitEd2/aGOkotNaen fP6V/Be3rvpBZUAzOzfU4k3bVfzmkqo8mo/Bicm7aerjSIKgB7Cusgsu8f0OPND3RSRf +F0rJfiQjPg1f2Yke2YHDdIUQEaz7ZZmGGRYIBIEtMiCY8M0n2TtnCdzy0aMSEmhwQZN kyWw==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=CmB3akZF; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; t=1776609183; x=1777213983; darn=patchwork.amarulasolutions.com; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=0lswNFhL5Ch2/NzX0+oc6kL4LZY9T2ZRa9x5yZJwVfo=; b=ER5HILeqAGYq0Er+W4lEtxnSwaxNJ6HW5Ncg3UybOxeUuAUwDincDjjMQsFV/+C/hO /gk7a5L3HaDJLoqjhqZ3x3cGc2of7L+4uWUIsqznb8lIVnzLM3c86aQ57wsRDm7ezn0P Yqbcp/xeD199YjJzKL/zwHjYqomf+K+KCNX5w= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776609183; x=1777213983; h=list-unsubscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=0lswNFhL5Ch2/NzX0+oc6kL4LZY9T2ZRa9x5yZJwVfo=; b=exUTKzZbkwTdltUp3cSfP+9Gk+OMU6IHEiM384sZAhXo2DxKKDxTQHQR6G6T+O4P/F pFHbV83M3nX1RGmOJO1C0AfoRVr1Wo5eTlA3lpwqX4w3qFNDPsE9uPZSRNy5yquAuejI EcYmIx2V5lHVrdoaEhBMxC5cz37JJX5IJFvS5E3NE2RbmvMnWJRNt7m1d6S8VFd2faG9 xF/sX2SntP7pBWSkoBCI5ZcoKpX6ux4U6pgM+IrmPqm+GOTWwDBiYCsu6SLVEyws6gyS aG6Wwh7PLFl1jPZ5JrxHmrH7SCpgT+3pfF88/MTV2mYawCOhM7JetR811Omyr9hvj5Ka hSyw== X-Forwarded-Encrypted: i=2; AFNElJ9E9ezHMdabyJoKck8jD2zL9WsBJPK17bLIYoQzylQtBzwQksYU6QKnmxGVQLSMhLsHpeh1becYbCbOP/Ji@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0Yyb0/oQ8P4JDttt46I0K2KmpBlLAoAD5kb3jH688N/enDjjycKl swk/xtTvqYoQtnIZRbmFfQGAoLqrdSbK8meJKTubOOmgg5Vgh/QVxgfhiFXi7NI6czMMTg== X-Received: by 2002:a05:600c:3515:b0:488:8b99:54a1 with SMTP id 5b1f17b1804b1-488fb78e7c5mr135138125e9.28.1776609183634; Sun, 19 Apr 2026 07:33:03 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiLFViWA7XYBMiGRKkT90AgQ+KCtfTXNhpORsFK22SwLDg==" Received: by 2002:a05:600c:a404:b0:485:2e9c:9e81 with SMTP id 5b1f17b1804b1-488f4b0f219ls23539435e9.1.-pod-prod-09-eu; Sun, 19 Apr 2026 07:33:02 -0700 (PDT) X-Received: by 2002:a05:600c:a416:b0:488:90ac:8f71 with SMTP id 5b1f17b1804b1-488fb73a9fcmr114149805e9.5.1776609182064; Sun, 19 Apr 2026 07:33:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776609182; cv=none; d=google.com; s=arc-20240605; b=hTp9nqhOMBKUwJf8SmEaTGCHv0NcQvDyXjB4nCrRUaz1pWGWYRxk7HJNg6jwF2QR+x lcSdLdOoyTVKfrk3s/bm6BX0Z/N3sB8M6RBbSCO5Nu2xSINc9Q8DUcKRCZgCQqMtfG60 GMgomQiYU/6D6NjKMUy1gvfWti5GShIyEu8czPMc2Y9/vEvAvzn8M7kKQ2+F+++XidER 6NVaFMDibGcRANG3epgWV1kt7PIOUyWHgFrU+ZKXeo/79a1zwQflWoizKHmoq1m9Tmm7 qBWwaG15qLuBL1fczc9SnSSD7sTT/Fzmqj/aAoGFCqhS6MO78hU/ZVxErMW/HjwKPsoD 2LLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=oAoP9NlzWltH1g0ieIPWcLlhZGE6FDHWvuaN/OvBd5Y=; fh=m48xu6nnYHLvvvmMgghe5OgVv/RULa4LC59SBiDtwXg=; b=IUlDvL6xh2sl1g4pW/j4dB/9VJ0J7KfD2e+RUFmai0qbRk5SoEi8bzZaRR9J3e/vLt mk//xY/8DCSiF5h2mQfYfm7KWaYjqcD8MxgsiHQD5Lj3jqNVCt9QeGB+zs3+ai5Tdc9J wgY9yPTX5Hf0vxb6dMGJUaSPo3OY3n3ybjDIU20CaPxUfoKb16JJXv5KJtjLMsCB2D1i xz3QgHV7yG5uU2kxRLhrBf16//wkH0JNbKyBm6/Lf5CGUm1S7oUq2q6a7EWlU79zYkqY s1kY+h+XUnV+1aEHpnFUC59LH0iuAlXbTiGDp+thYZetIWI+eLoJ/xIlUTOgG4/SmGjX 2BMQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=CmB3akZF; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id 5b1f17b1804b1-488fc0fdeb4sor11346155e9.4.2026.04.19.07.33.02 for (Google Transport Security); Sun, 19 Apr 2026 07:33:02 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Gm-Gg: AeBDiesW6D6ihTm3uACM4r65/6ChdMxqmlYCABUuxoxmrBuGhq1ys60QIm7Vz7TshMo H+XiuQj389NYjjFIxNNLqCfB/ecj9C6UGDmj64mzz9gzf32PgUedXHkgeak6eTTROc9cfAcsoTf raTj5Z9/aalp0LB8qjSHd16EnYTB4uGuHtsN9QXRdlEo20Nf3hCAKTAXi1dRz+5aBSuTA2TAD7V ECo8ooOUhdB2q+J+Z70b1N7xGgASAAIL+JjaACC4mlnvkhopwOCWjPcnVat4jm05jHWuB89nDoj +kmA0ZU6Yj1gAUeMi+PbG3Sunm+yQaGlMVc1U4lFL+t5d4qHr/CSDLAoUI/gTVGwLlpqwFxvvWl /CVhrSlWLuprhlACUs/J0oVdudOPMv1d9Z0F3scTKWOYywIDsgIdH++dYhUgmWxAJlzxYWH5/LR B5HmkPDJvhPvcSqKG7lDCqbJzasGENBEOku4Engb4q5x7NKUtxmLmFHWlZ0uc4xFRpTuvPJQNrL fgIuTwKjKabD496TPpy208/dCXUUrQ1cgUY9ZAQ/Hl+Tz4dlP9TvqELZqcSWyH3ZAT9GRWA1l8e Kw2sZLwNTLm7TSIO8FQbI9RrBIn7HPeb X-Received: by 2002:a05:600c:314b:b0:488:c282:e78c with SMTP id 5b1f17b1804b1-488fb77870fmr136331995e9.19.1776609181607; Sun, 19 Apr 2026 07:33:01 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.homenet.telecomitalia.it (host-79-20-97-39.retail.telecomitalia.it. [79.20.97.39]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488fb755938sm86864245e9.3.2026.04.19.07.32.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Apr 2026 07:33:01 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Simon Glass , John Toomey , Padmarao Begari , Quentin Schulz , Rasmus Villemoes , Tom Rini Subject: [PATCH v4 4/8] cmd: part: support lookup by UUID Date: Sun, 19 Apr 2026 16:31:44 +0200 Message-ID: <20260419143247.437733-5-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> References: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=CmB3akZF; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , The 'part' command currently allows looking up a partition only by its number or name. Extend the 'number', 'start', and 'size' subcommands to support looking up the partition via its UUID. Unlike names, UUIDs guarantee unique partition identification, avoiding ambiguity. The logic is updated to check if the provided string is a valid UUID before falling back to a name-based search. The help strings for these subcommands are updated accordingly. Signed-off-by: Dario Binacchi Reviewed-by: Simon Glass --- (no changes since v3) Changes in v3: - Add Reviewed-by tag of Simon Glass Changes in v2: - Update commit message. - Update help for 'part start', 'part size' to mention UUID. cmd/part.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/cmd/part.c b/cmd/part.c index 5e520d707f39..3191d5861fdb 100644 --- a/cmd/part.c +++ b/cmd/part.c @@ -144,6 +144,10 @@ static int do_part_info(int argc, char *const argv[], enum cmd_part_info param) err = part_get_info(desc, part, &info); if (err) return 1; + } else if (uuid_str_valid(argv[2])) { + part = part_get_info_by_uuid(desc, argv[2], &info); + if (part < 0) + return 1; } else { part = part_get_info_by_name(desc, argv[2], &info); if (part < 0) @@ -517,13 +521,13 @@ U_BOOT_CMD( " flags can be -bootable (list only bootable partitions)\n" "part start \n" " - set environment variable to the start of the partition (in blocks)\n" - " part can be either partition number or partition name\n" + " part can be either partition number, UUID or name\n" "part size \n" " - set environment variable to the size of the partition (in blocks)\n" - " part can be either partition number or partition name\n" + " part can be either partition number, UUID or name\n" "part number \n" - " - set environment variable to the partition number using the partition name\n" - " part must be specified as partition name\n" + " - set environment variable to the partition number using the partition UUID or name\n" + " part must be specified as partition UUID or name\n" "part name \n" " - set environment variable to the partition name using the partition number\n" " part must be specified as partition number\n" From patchwork Sun Apr 19 14:31:45 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4548 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 531B13F1C5 for ; Sun, 19 Apr 2026 16:33:06 +0200 (CEST) Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-488c2aa6becsf22114365e9.2 for ; Sun, 19 Apr 2026 07:33:06 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776609186; cv=pass; d=google.com; s=arc-20240605; b=e2f3ZLBz7l7t5g3IqtNwaeRsWdchGSPT2dDdLBrqiCsUfz+FHwp2iCO9KToKb9T3yi FWQpk5Qjbj2XrcUtWfsQ1X3Y96+GTWX+r5A6/6ardCSur30J2DlxVM3zocQLfuwsmU0f elTH3VxFcESiEyrjyS1nS6GapLl24E0Eu3Ik27McuQkVWi8nGRnh2L89g3q6F4bUdW6/ JYbnBHb5EAWroFCHdV8GF7xImvs54oelbGb6kG5DS2MZLDABNtE0kshAroBSrZ7TW9De GE6mtKPybFBb+Z1dllgAHdoQSXqpLADVaxXNkSFsFbRS26vbFY9rccZJUWMuMeCKSM19 LpPg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=/sNg5n/0pwc0RJhb+nkskkD+FzZM0grwYMOkgoANktw=; fh=IZJb+YGxqRIgjTWtF9xFV6SV3drst/MDRs1nC6I6H7o=; b=GkKhGd2EAdgy6tpIMRqqP1oZOGLN93q+mpNUauLORehfXbr+OJj85PvPSs3qabq9Pd VYAauPfxrMQYzuvtRQWCipCH9z7CDHMWy3T3JPuSMsN5M7bzqyBTRDx2s6X8f7W0gfOr 4lDu39NysUNeTKbX/GX3tIvTfl4MuyoOQKGaZs9NK02Uu1Uefv3CZNcVBzqxWM3eqNE4 gQkOOhxlbszgO7KUCTOxxMnQTJx8SjWvL5DPh/yXns/rPF8SbgblE8d0vGMcPzAcFKdD GASEpgWYWOL6q7GMvQVhvMJgEux7TPQndXXBOfxqaOUN0i5ISFFu/KS5wR0Vfe0bHfuC 2JTQ==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="UcUqBxl/"; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; t=1776609186; x=1777213986; darn=patchwork.amarulasolutions.com; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=/sNg5n/0pwc0RJhb+nkskkD+FzZM0grwYMOkgoANktw=; b=fwB/sXoynWIv65209Ou+mSzi3ZmqYprW1sralpUpSt5a/VVuwsmkoReqPCgL9J4Tya tJkpgHs+tq6hXck5kqQVmyhH2UeVmxJJoFkWvdtn3zT1oBR8I3sYIMBxRRa142wRyYgt UWfjaITOrgicBBRfbxcOME5aFBPoJQMDxkDSI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776609186; x=1777213986; h=list-unsubscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=/sNg5n/0pwc0RJhb+nkskkD+FzZM0grwYMOkgoANktw=; b=DLcdfpFjGViV+8a1hOWPBBo8t55KgY6MfZnxLip9jl75A16kbfo9YEgNNyJWJ2DJ/O CF14sqEKPBH9+O6f7XiYjeRMCw5ieSXuv5YfrgFXA3JJhQmDljcXrfXxqtlQpOchN7M7 x9uTos9O3IdA8fuli9ZJnnMaRXHvaRlq887eMu/6wU2SjDnM0F8ISl5eSp6rTYz3AxQw TY/uLtWmbd1iOeaNqm/6JjP1iAGfR1BQPRSzk4g4D6FpMeM8axyQIIdyS4f5783/3cBC MBQ4UFAEu1lnxJmJJAbLu9OD0XWLRnoDnWKtiDGPPLSO2Cx/ITM/dEdvmIU14C8+ZBgM mkhQ== X-Forwarded-Encrypted: i=2; AFNElJ+e32c/OTquIt8niT+E1E0ADh36YIneDSCmuVtuaOmxMR53VNSlt7J0paq2cikjLf1lBWw5NWPY0MbX0jUF@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YwDc4MYCacfk0Eiqrm1A0AqDrXtUeIrXvqPXc/jmfpFHFruCNH6 vdTQU7I9RmguHTMBCVAXSq6Ze7EOY+vvr9hqX3FzNRQA0nsT3PRcQoeiVkJ2xY4/bNR5UA== X-Received: by 2002:a05:600d:8449:b0:488:869c:edaa with SMTP id 5b1f17b1804b1-488fb74e103mr125473665e9.7.1776609185943; Sun, 19 Apr 2026 07:33:05 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiJpNicWUEXcwU8AeP9Vaqz0vjWYnn8eUbtbUF8ws7gyYA==" Received: by 2002:a05:600c:78f:b0:486:fa9e:9317 with SMTP id 5b1f17b1804b1-488f4b110c6ls18508245e9.2.-pod-prod-05-eu; Sun, 19 Apr 2026 07:33:04 -0700 (PDT) X-Received: by 2002:a05:600c:1554:b0:488:9bf8:7f17 with SMTP id 5b1f17b1804b1-488fb77810bmr148231115e9.14.1776609184269; Sun, 19 Apr 2026 07:33:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776609184; cv=none; d=google.com; s=arc-20240605; b=NDSMahApKIYxNxlBW7/t9Bp6LQJY+SBWXqxnBoyHqkm6ORB3E7L/XIaboMccV6Sln6 vYQb2bwxz4xK/kvCi0i1bRb07iij1FxL7ZJUyciudfeHXWyWPchtKrjP8jLqF+NSswbj 5w4B5MpIxGw8x8EaXxKswbUN6L7e1btjEN9aM8nppHeQxZyYEi746SOWofTBPynRx3V6 ZvN9jkvf9hEd9NL9zUxKLX6BZ9GMt+183E9BddCm/OmtzuTM8dWGAjF7fq49SbXXF2SS KDBTBcCJTsiATBXNzu5FWbBlSQb57ejNARI/Yii6C/d9sGwYan8EaUtD2bEgECmTsqz6 LYuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=V3edTpCbQLoF2GLZoQuCSJDpFP7hzTahHYvj6ql2yGM=; fh=cqGgBtLgo9Y7k4Yog1LltCfcfqjVrN8Vq2ZxieGu7Jk=; b=aQB9wAKfeGMgXcBnWquQPdue7uC2hZXrkXD6Di77yxjFu+ESouh71G/sxEYwd2QexD 7d4H2W2OUP/rqBNaCMLj37sRJmmo1p30YQZYsRHbua+6piE4GztOxzBzykas9+xNPKD1 sCDykHdye52+KM7SVvvGKSUZYOul3K/0bitsFcZEEDevtnskLgCDO0KeJfjBysUuOulI lfCwW7tsPkISzI1hqzZSmTVfkQCrarvqTtiUI5XwF8hq8AN6Mci36SXbNHNe7xQqY8no k32/bqiPwSJK8U4WBSkTAX1+A/IJ5FaJe0MDw4MVCmaPsLzvvvV/m6khnBUw4ie7I8iF 8xRQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="UcUqBxl/"; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id 5b1f17b1804b1-488fc13bd54sor10108815e9.11.2026.04.19.07.33.04 for (Google Transport Security); Sun, 19 Apr 2026 07:33:04 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Gm-Gg: AeBDiesd+GDJlWBoelIKcN8ZySGmZIDJ1lCa+P6M3iXvhK7KOHvm9wIpvA398rO3er5 tuy5ZvhJsNBd02K3yovNQLnQ6NCHjTAc8K+ABbwxed6DuFZsmOTKmYZVeMI79ntD9PqM7IPDD/d Xkb9UgHamf4Dr2puwsmxrrwDqvRzmMAnBR2WXMOob0X8gB9s1AbOLAs66Qp66CGXNFCv7hIKJDb ljoAnvNjnlnamwJJ7bYCfLFm/P5zlWK5QYJ8BxRNIj+5pdPMn38HRIK/tcPT2BwGFlx+el81iGy /kIlirAFkIbQbItSkSlQvqLHudyzV/gyyDoo5pq8PwQzQk/82o8gMnWpL6zxcE6LEzjyRsN7lo7 Y+LoTLEASd0erH0R0i5upHao3GPBPaA1r81EgT3ZYxFnZXI8vVWNKYAyXz1OkZ2uPrybAsXM1nT i3BzOmeuM54VKnsxt1quL2KE0vM1+b6NhV4Eaki/PVqLoSUV8yJkRNWOIhAOcoDrePBe1pRX/09 4S3MlPFYaURNOIXeQUH1vPliudtSyZfUSBFojMLc/e8qfbmhCTbIOm5PcSj17yqhbp2fS2GMBGz PMRb4QHZ0xdoLAT3kHfka3DjycW3wkVnjK4P91SmSbY= X-Received: by 2002:a05:600c:899:b0:489:1a63:509c with SMTP id 5b1f17b1804b1-4891a635125mr11945795e9.0.1776609183696; Sun, 19 Apr 2026 07:33:03 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.homenet.telecomitalia.it (host-79-20-97-39.retail.telecomitalia.it. [79.20.97.39]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488fb755938sm86864245e9.3.2026.04.19.07.33.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Apr 2026 07:33:03 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Simon Glass , Tom Rini Subject: [PATCH v4 5/8] test: cmd: part: add UUID lookup tests Date: Sun, 19 Apr 2026 16:31:45 +0200 Message-ID: <20260419143247.437733-6-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> References: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="UcUqBxl/"; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , Extend the 'part' command unit tests to include partition lookup via UUID. This ensures that the 'number', 'start', and 'size' subcommands consistently handle UUIDs as partition identifiers, maintaining parity with the name-based lookup functionality. Signed-off-by: Dario Binacchi Reviewed-by: Simon Glass --- (no changes since v3) Changes in v3: - Combine run_command() and ut_asserteq() -> ut_asserteq(1, run_command( - Add Reviewed-by tag of Simon Glass test/cmd/part.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/test/cmd/part.c b/test/cmd/part.c index 5751dd315dd8..0069fe5bfea7 100644 --- a/test/cmd/part.c +++ b/test/cmd/part.c @@ -80,6 +80,20 @@ static int cmd_test_part_number(struct unit_test_state *uts) mmc_dev_num)); ut_assertnull(env_get("partnum")); + for (i = 0; i < ARRAY_SIZE(gpt_parts); i++) { + env_set("partnum", NULL); + ut_assertok(run_commandf("part number mmc %u %s partnum", + mmc_dev_num, gpt_parts[i].uuid)); + snprintf(expected, sizeof(expected), "0x%x", i + 1); + ut_asserteq_str(expected, env_get("partnum")); + } + + env_set("partnum", NULL); + ut_asserteq(1, run_commandf("part number mmc %u %s partnum", + mmc_dev_num, + "00000000-0000-0000-0000-000000000000")); + ut_assertnull(env_get("partnum")); + return 0; } CMD_TEST(cmd_test_part_number, UTF_CONSOLE); @@ -120,6 +134,21 @@ static int cmd_test_part_start(struct unit_test_state *uts) mmc_dev_num)); ut_assertnull(env_get("partstart")); + for (i = 0; i < ARRAY_SIZE(gpt_parts); i++) { + env_set("partstart", NULL); + ut_assertok(run_commandf("part start mmc %u %s partstart", + mmc_dev_num, gpt_parts[i].uuid)); + snprintf(expected, sizeof(expected), "%lx", + (unsigned long)gpt_parts[i].start); + ut_asserteq_str(expected, env_get("partstart")); + } + + env_set("partstart", NULL); + ut_asserteq(1, run_commandf("part start mmc %u %s partstart", + mmc_dev_num, + "00000000-0000-0000-0000-000000000000")); + ut_assertnull(env_get("partstart")); + return 0; } CMD_TEST(cmd_test_part_start, UTF_CONSOLE); @@ -160,6 +189,21 @@ static int cmd_test_part_size(struct unit_test_state *uts) mmc_dev_num)); ut_assertnull(env_get("partsize")); + for (i = 0; i < ARRAY_SIZE(gpt_parts); i++) { + env_set("partsize", NULL); + ut_assertok(run_commandf("part size mmc %u %s partsize", + mmc_dev_num, gpt_parts[i].uuid)); + snprintf(expected, sizeof(expected), "%lx", + (unsigned long)gpt_parts[i].size); + ut_asserteq_str(expected, env_get("partsize")); + } + + env_set("partsize", NULL); + ut_asserteq(1, run_commandf("part size mmc %u %s partsize", + mmc_dev_num, + "00000000-0000-0000-0000-000000000000")); + ut_assertnull(env_get("partsize")); + return 0; } CMD_TEST(cmd_test_part_size, UTF_CONSOLE); From patchwork Sun Apr 19 14:31:46 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4549 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id CB6333F1C5 for ; Sun, 19 Apr 2026 16:33:08 +0200 (CEST) Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-486fa07f2bbsf16950255e9.2 for ; Sun, 19 Apr 2026 07:33:08 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776609188; cv=pass; d=google.com; s=arc-20240605; b=JHz3ptoRMeVuoJO4XJOeM4gKdDZhwLQp/ti2LnPAFzHkD/pg6fdEgJI3tDd2Wnh100 ecJ4yJ+TeIo7JPSdegY6zJPjrW6s46VwwO26gqJZWMe44I9HO/ROTtPiVcy5M/a4TNbI yyNeiF132xZEmF8o92hJO4Jpf5f1QCgfUxJ84xW4t+VcxetVS7/g7NGYtTzL/cNtNgg0 q7Iy3bgyQYkaTpZFGFSzQQzoAR+0ePCJj7K8xYyDRy+9bB0kSiNECAf8Jaua8jeONte+ aObnOZRWwA3Ym6lSksFoIARqXSjclJiYCbpDS2gT1CQc93xKmtAXlaKiiG2GZXcJzfGy n0ag== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=yTgGEeHa2xmUoIIdFalLe42i+irxzHALdiN/54ZthUc=; fh=NsB1U1xPlQKA9JuzSrpoDvPe98dM+A/EmV68SnCqldM=; b=kY+jILlzr6hf7kDlqkoDJIsFTXWOZe5CRSgMMgVgTqSBkLeyIHHjNwP3xQ/TUKSUwD 08aEHsgdb5Vt+3iZzjTIBxlNjf9XWW6sqCw//enNr4QEEIoQVaYPH8tDFUM1r1D7syqe Y3bnT320QBPYF+XdmZVYgMcN2wr+4HlrGnXPjLiWTHjeqySxy0fKmXkjCxFJfw5V3Pem Sn1kN1qlbyCUfL7bqmgZ1mNfhqjYBz2U48GA5VqI16v289gWs+pPxFjXpBBImbOD0QHf j9EMiRGMbHrtKcn9pPZSilTd0M7w3z1aq2ZUYlLyYJ4csmulztlmJOQbLf4lcoUuybNC BTlA==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=mKJHL8M3; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; t=1776609188; x=1777213988; darn=patchwork.amarulasolutions.com; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=yTgGEeHa2xmUoIIdFalLe42i+irxzHALdiN/54ZthUc=; b=P2ORWvcs4KiqByWYHwC3Wve8dA4YQJpkuTDANY+hqP0Ht3lsiSx1TX5D49K4vaaqmI Cff9SqPIJjDScUFVVS7Mi3St45Tae7aJ/t8yVVWXY6nj59ftvSD0Q3fQON9A3iyvmCZ8 X6gAukFgIPDsmCYzPqYWLIwUDU+huz7p47NP4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776609188; x=1777213988; h=list-unsubscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=yTgGEeHa2xmUoIIdFalLe42i+irxzHALdiN/54ZthUc=; b=sT+y/XttcXe3w9r2qGHpwRJgC9ry6XoCFd41zRA6nBE7ZmX6EUQqwOu7NwL/0xK6yO D6mIe2tvql/H5TyaTRGKsgliV2gVSSYVjaWjIMXm79ZmKoEYrsqUdCBj9BIbNU3aM4wm swB1efNhoOxvQ60/5fjSZdjEuE7tkP+tgWxnYxFlSq7Gby8HRC5DRvEzXQ6Icm49J+LB MYJnXI8mSd0yiYJSfw2AfKeXLLt236CA7D7GJYUx6B3MQhpBzL5kREptOcEBF7fzFK+T YykrKCNKKoFKRydbc/FXXidrW+8PCK36XpDEnKF/fJ7ilVI8hMZQS6IQKRx7r7qyPo4Z uvxA== X-Forwarded-Encrypted: i=2; AFNElJ/xvmtI0bYqgdBAPIraZRzMgI97NO/PG0WmD1a/Zy9fs3ka+/pGrZ/kFmyGjWheFmhUcyLJmxaJfkOQ9GrI@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0Yxd+ny66EFSY5Ue6je7XxTwmiqarDgPl9tA2dzVKkkGg3nH3xvD yACphWURaB2h2mnIyKmDjthcfEHQE5JNZho+E3utLqtiQplS4W8I4z1jhaziCxtKYjxpCA== X-Received: by 2002:a05:600c:314b:b0:485:3a86:6392 with SMTP id 5b1f17b1804b1-488fb778b66mr132797305e9.20.1776609188172; Sun, 19 Apr 2026 07:33:08 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiLqBADC5qFeTfMS6009syuNaxrmEptjPmJobM7TzyLLlQ==" Received: by 2002:a05:600c:6dcb:b0:488:8433:1d20 with SMTP id 5b1f17b1804b1-488f4a7a143ls18380605e9.0.-pod-prod-04-eu; Sun, 19 Apr 2026 07:33:06 -0700 (PDT) X-Received: by 2002:a05:600c:a105:b0:486:fb69:4960 with SMTP id 5b1f17b1804b1-488fb7786e4mr98472525e9.19.1776609186431; Sun, 19 Apr 2026 07:33:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776609186; cv=none; d=google.com; s=arc-20240605; b=LDZnRw2mqWZuykNOnYKnOKWhEL+BmxWlUWpmsmLJzCYe7wipRXUKCTou0cE+abNVel H8HqP1J537PeAKKMwHRVXXwiREaju4Z3/eZ6qCsEu5vs8sKz27oIiLjjIaQm7hbwgbZC EbjeopM31kysp0l/7CRm9C47nujO5UXYKyVGI9kkw3Pvxfa+4wi6EkXb6PtxTOUjNEUL oPjkOKhNU83oPYo+6Mv6Vou1HHL+Q6eYFzQ4NUjIT+NiVdmQq+bFuI7K7Ch3dy6ToXyd ve43MP6tO+6RupW5c4H/1Y/9GQaIxYdbyBTp0ZWebkQv02qENL9K4Z8tydYBve2ga0pH 8aiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=35oH3mslwLGRRway1ir7K30i9wTZHNIramSRlzIVcYQ=; fh=63tQyC28C9/eYaWpq6aXRoXJf0iCc3tAFavW3mffgU0=; b=OsqZ3Qo4NkPMysHMzJxHcEijZkXTxGCBcwDc7L7GhJnlFNF1Xx3nKfMtMidgdy+eUI HMf/FOxP7Xq9c8ueIIKQ56an8xxaPeDhJD5peuXodVHX+KsQYLnDr2mmdEFA+ERYuvUD qr7rqDkzLw/IhgVFFCF+p01GV/8SRB9V6gvqANUwiEtVlYsTvTCitsbvAJY34YPvZwiw +Ob5OHNn7lC5feUzT2lawZEcdasdWTq249HZcJJebZsoySrDgbbXfBww2i/5j3gb+5DA d3XFTd88LAD3o3olvr+YRMD3PmXPLe8s5d0fzbxmHNvpnzBedF05ZGxp5WiCSP0JXOK5 KFfA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=mKJHL8M3; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id 5b1f17b1804b1-488fc0fc6f7sor8739785e9.2.2026.04.19.07.33.06 for (Google Transport Security); Sun, 19 Apr 2026 07:33:06 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Gm-Gg: AeBDieu3rHiFoOiij9UUItLouO5dsB8itysTl/OLFl+ujIUaAx49sxCS7z80LKIqOhZ c2ESAaXESGMGuOpaEoKtcMJFA7NupKXEcvD96b9fqH4hAvPna/PpV63VratYUDi3KCiIVm89VAg PgfnBt5IUYJbhHHa2eoGXNtYgVmDfgNymYw72rQpuTNtoKWNEJK5r8jF3u4smAIDGfevghwS1Yl IX9fI6DSr9qPbZ6PG+wdPAPZ8urh/FVSbVqJF77ItiMtii4TrjEEjuFg4a0ntqCM85+OkrGMiqO oB3n3g8DrOSjGJ+jr2do67Xlkfenl6kteUqN96A8phJeA0oiloc/VXUOBSOucfrm+tyntuUn4Nn lcplglQ/WY3tOSF45l6kJr0OIxpWRx5kxOHtbaJiYdjURPl/I4+6l+kHYoS3xDcd2qJHYoHVTKF Bm83hliMbsDFI+U4M8ScnQEWGXrqj158K+/rTnPzMZwnFnPo8CLor0gRD9mkzv8uk3E5Jspc1ao uvyQRMcU2njQmJwOjFmAdyoSUjrYel3SsQlScnIfTMMCLa1M/3BI0sxotCCr69q+W6PatHaU6qs fDRx6N2Pdd1ltyyNpoVYzTrFWoZpZkDq X-Received: by 2002:a05:600c:4e16:b0:488:d6eb:e63a with SMTP id 5b1f17b1804b1-488fb76fe73mr140754565e9.14.1776609185929; Sun, 19 Apr 2026 07:33:05 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.homenet.telecomitalia.it (host-79-20-97-39.retail.telecomitalia.it. [79.20.97.39]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488fb755938sm86864245e9.3.2026.04.19.07.33.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Apr 2026 07:33:05 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Simon Glass , Ilias Apalodimas , Kory Maincent , Michal Simek , Padmarao Begari , Sughosh Ganu , Tom Rini Subject: [PATCH v4 6/8] fwu: add helper to get image GUID by type and bank index Date: Sun, 19 Apr 2026 16:31:46 +0200 Message-ID: <20260419143247.437733-7-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> References: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=mKJHL8M3; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , Introduce fwu_mdata_get_image_guid() to retrieve a specific image GUID from the FWU metadata based on the bank index and image type GUID. This allows identifying the correct partition in multi-bank (A/B) scenarios, ensuring the correct image is targeted depending on the current bank. Signed-off-by: Dario Binacchi Reviewed-by: Simon Glass --- Changes in v4: - Add Reviewed-by of Simon Glass Changes in v3: - Add kerneldoc comment for fwu_mdata_get_image_guid() above its declaration in fwu.h. Changes in v2: - Add kerneldoc comment for fwu_mdata_get_image_guid(). - Pass efi_guid_t by pointer for consistency. include/fwu.h | 11 +++++++++++ lib/fwu_updates/fwu.c | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) diff --git a/include/fwu.h b/include/fwu.h index 9cee8fb085cb..68a51fb4296b 100644 --- a/include/fwu.h +++ b/include/fwu.h @@ -396,6 +396,17 @@ void fwu_populate_mdata_image_info(struct fwu_data *data); */ int fwu_get_mdata_size(uint32_t *mdata_size); +/** + * fwu_mdata_get_image_guid() - Get image GUID for a type and bank + * @image_guid: Pointer to be filled with the found image GUID + * @image_type_guid: Pointer to the image type GUID to search for + * @bank_index: Index of the bank + * + * Return: 0 if OK, -ve on error + */ +int fwu_mdata_get_image_guid(efi_guid_t *image_guid, + const efi_guid_t *image_type_guid, u32 bank_index); + /** * fwu_state_machine_updates() - Update FWU state of the platform * @state: FWU bank state diff --git a/lib/fwu_updates/fwu.c b/lib/fwu_updates/fwu.c index e82600a29a40..2b11e5da061d 100644 --- a/lib/fwu_updates/fwu.c +++ b/lib/fwu_updates/fwu.c @@ -243,6 +243,39 @@ int fwu_sync_mdata(struct fwu_mdata *mdata, int part) return 0; } +/** + * fwu_mdata_get_image_guid() - Get image GUID for a type and bank + * @image_guid: Pointer to be filled with the found image GUID + * @image_type_guid: Pointer to the image type GUID to search for + * @bank_index: Index of the bank + * + * Return: 0 if OK, -ve on error + */ +int fwu_mdata_get_image_guid(efi_guid_t *image_guid, + const efi_guid_t *image_type_guid, u32 bank_index) +{ + struct fwu_data *data = &g_fwu_data; + struct fwu_image_entry *image; + int i; + + if (bank_index >= data->num_banks) + return -EINVAL; + + for (i = 0; i < data->num_images; i++) { + image = &data->fwu_images[i]; + + if (!guidcmp(image_type_guid, &image->image_type_guid)) { + struct fwu_image_bank_info *bank; + + bank = &image->img_bank_info[bank_index]; + guidcpy(image_guid, &bank->image_guid); + return 0; + } + } + + return -ENOENT; +} + /** * fwu_mdata_copies_allocate() - Allocate memory for metadata * @mdata_size: Size of the metadata structure From patchwork Sun Apr 19 14:31:47 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4550 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id F003B3F1C5 for ; Sun, 19 Apr 2026 16:33:09 +0200 (CEST) Received: by mail-wr1-f69.google.com with SMTP id ffacd0b85a97d-43cff4d00desf149085f8f.2 for ; Sun, 19 Apr 2026 07:33:09 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776609189; cv=pass; d=google.com; s=arc-20240605; b=EpqDItfIKC+HzhRRkANPTicr9NroNRtA9C0vlCBBrijjXk72i0m3dbsCAyJP4WAI6z w3LBlHM0nCU0xpNBiLQO5QEYk26K7tECMfMfu8z4JF1B17neC32LpbcZLO2hcikvaNBx 5v7xXGbSLAOW0v6O8kr74EvnMaVdKj20nBTYuMDQzYbIJz6YExZAiptMVanzzhh126yU zMHbliGWcTlHSxVMjlI3z1c3oohy/XZBXg63rV8DXDU8zPB8k4aSWfV01/KQDf8AGYXl DrEbulCgyLpnQqQNSH55VfPUcB1nWAAsZI644mwVnkDuK4Xafre7JN0SF1zbfyQIAHaf vA/g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=MwBbWdG83HEcvkIdtb2q3NwKGpUkfJnw09jK6SykUM4=; fh=hRrX5XkQIYfJ0K0CbqwCJtJ7DgQ8t4xJFfYr7/yRfcU=; b=YdFmcdU4epQd3QL1wTED/ZgtVAj6jBhdg8YUTCTMWecfjl0AZ1bwKva5FBYFpUH40V mvzquxqwEQSeCUzuI6TKxmUlBb9nJFjm6F6cdL76mg3zwjb6Y/W0CfXFAXvLLGGQqZ3F okUUCogOSFJjVGtZBn9XkibHwPezFrapcLJnhsFuRp4fPY/qEAa04og3+2Vg9+S2KPku LpgfR/xg7Qaxn560A0H9pSszyXZwK7UbWEAX3DLepIEfCOM+V/QJOyyGh6M6Mjxx4wBE EAhLl8CKTlPvdfn37LzHF7QPigodi86CBRvoNdiiHXhDRYrO8XgNaSH1Qx2MS9wiPBJs voFA==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=HOCF89v2; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; t=1776609189; x=1777213989; darn=patchwork.amarulasolutions.com; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=MwBbWdG83HEcvkIdtb2q3NwKGpUkfJnw09jK6SykUM4=; b=Ourr2iVIOSevBnlrK+45J8xWsUq6xI6/S0RqM21KY5xo+Ty1Fql786DVuoGeaJtUyT 4jWDPeEjtLSdO2TvBao4XfIDs9geFYjG/N1f3oCYj54ashfeJd+GWD9JkCZXMNhbejms xbl9GYMh78odPbkCAsmYtKvStdbnPNjg5g9ec= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776609189; x=1777213989; h=list-unsubscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=MwBbWdG83HEcvkIdtb2q3NwKGpUkfJnw09jK6SykUM4=; b=ZttFcjiogvV5zFbBLtchDRCpddJwj7iS7rkEQbc2mmSJlLUuBiW1m5dsyUYMIsMw5g ooa3wKGS5M+LPxA9kcgPuNnksvMOKzstJFjOVwnU1vAFDzqHp79WBeYD6w8twD3F5jVh 9cVo28rNUVm7yxlU7xYM1Z9y99EAcR93OwtxOamQbwTqh3G6w/ykrQnSlx7YnaI2qMCa pdkEt23mn5MSy6IeRv4KvMvZm4mTovBjf4OvHvUmOxJ5vZwXsqYYdaaXl4szSGeK9B6K TrOAEIfJf8Ob/UzoQSsBIjtDtnjEjNDmwio+Uha/kusmTBoqwXQUZpnAUKKZMmz0UUQJ AU0g== X-Forwarded-Encrypted: i=2; AFNElJ9hBnuksAMV+HxEN/qx67s+fJ3oTZb6rRpTRYRCQJFGXE2af3bcsZpM1UC690pamM1dGXfhh8gFQp4IqYbh@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YwMfqn0V5X0cv2fum9CQ5cLhbUaWjDjZSlKlyUCq+Xo3JMd//po kftmH5CjGMTkZ0E3eOc+zL9b2SuVLI1m5gBKFxx82zN3dT+76mNhqATNDP6hTGWQ8/W5uw== X-Received: by 2002:a05:600c:3b85:b0:488:a39a:24c2 with SMTP id 5b1f17b1804b1-488fb73e120mr80813855e9.1.1776609189531; Sun, 19 Apr 2026 07:33:09 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiL4vplIfqZCQg3k2xxCoYgKUelWnKnAxtS+foV9zwAs/w==" Received: by 2002:a05:600c:a309:b0:488:9971:e175 with SMTP id 5b1f17b1804b1-488f4b03febls20586335e9.1.-pod-prod-01-eu; Sun, 19 Apr 2026 07:33:08 -0700 (PDT) X-Received: by 2002:a05:600d:b:b0:485:2a85:e5ec with SMTP id 5b1f17b1804b1-488fb73b424mr119178095e9.2.1776609187732; Sun, 19 Apr 2026 07:33:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776609187; cv=none; d=google.com; s=arc-20240605; b=NSTLK9HpvKB/3GJy0s39CWtASFDlnS9TDjzNEfgr/uKKvD9khCqdFKkUj6BlRZoPRc aw03vBB9iOwMN6qAjKqGPAeDsnyFrktfJGMW3N8TAgPzEtKuu9sO9NS0cEbhjjajJenb krf7lQyoyq6LagqmBiHNIbzgay6IMS3lEky0keZQBRmEy6/ZJFAKk8/kjI/JjY4Iqt/L MTpdCkJB6HFsZiQ//wsGJaNrTIyD95eAaWmZm4CWMUTMpC4cLkEK3XVw3M4wXXSfuv5b sPMZigcRIs85hKOG+oZNr7vZ3dBVGIpNO78jQ+w3vDd3tv9wo6V7fKVsPEXiAt24Vnuf 5mSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=6deyBlFxw09CVeWWPj4uHvVX4vEcxqd8u/pC4T+uRdE=; fh=gPdoiPkT0cPhhKDXQ/ZXs6uJnZyDzwMviAatHJnYsXQ=; b=ffTWwsRNK8mzkRWZArpHZq2Ju5mMl2jXYReh9HbikqOmljjnpTS/OQtdZOsiST+Zv8 f2alydyzflP5qf9RNNec3L8GSlVG6UywLTbFd3aQL/gY/gfFEI3zHgTHHgVU1GSbeFHL YLw2MUYPeYEbz9iyL0r09X4hoFrnhAme7gptDstuJDRELi5x7XGicymvCGbGMN/iykZ7 90MZHbm/Bm0TseflO36ZIeSb7T8XBfUQ/GXoNhhEbg5sk0cZRfHojf4gVUEGBaeKvLg0 bYGsVqvqYdVx55lnBHxpmxqYcFxqTFQnsPRx6WefTgyHv/X+I+8g/UCazRFt60+9VGuL iEUw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=HOCF89v2; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id 5b1f17b1804b1-488fc10766csor8042885e9.7.2026.04.19.07.33.07 for (Google Transport Security); Sun, 19 Apr 2026 07:33:07 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Gm-Gg: AeBDievyU6slleLx2oJzZdnmkysPVC5YfaNfD0E+4U8XdmbchHHKp2Glvdk4R3a2pM/ ZYnlcDNtBtt1ZWX1gu7VeskN3lE81DyRn9WcAUoJRRMHJCTQgnb4FIy/nZ34d6yor1AIUL7EEg7 bSIH3YHJe3QTAlmV4rA2OXIbGG2UaPnrHTdYag/Jtekz+OSfDaMSh1eNXFuOsK/tn39cZhviAxt rACtA/M40EyL71udP7wmKUQE9imNIyb/shML3M+l4IbEVc8M3d2qsRNSVWy8IFiLRogUKwevjXw XY/Kz1vyn7h2Zz75jznYzhUI+/W0conYF0oWU//ba43ZFl6UhrqoJHZAQJMC9IPJg2eft8hlqjF l+/RoykcHhm6wah8IJj0+qFi++5OOXGt4nSSDHw2QGbIit13UKYVDcSMnKY26ZASNC6B4LOJwF8 7js6lvnOwLVb4JnXtBXCkV03uxwqSHXyrJbEXsR/2s4KTlOkJ6uIsCy9oVNuHCUVfhEHUBZjPRl QdgLJIHsKWa/qxfbvrnwvYp+hO/sZq3fYoOJQmCqpjIdikQZ/mSmbc9Ay1BgmHHu0b72vAlok9e yYh3ijGPw/9PnHl0wiKUL/ttJHCR5ofS X-Received: by 2002:a05:600c:a404:b0:47e:e2eb:bc22 with SMTP id 5b1f17b1804b1-488fb73b2a3mr124175025e9.5.1776609187279; Sun, 19 Apr 2026 07:33:07 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.homenet.telecomitalia.it (host-79-20-97-39.retail.telecomitalia.it. [79.20.97.39]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488fb755938sm86864245e9.3.2026.04.19.07.33.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Apr 2026 07:33:06 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Ilias Apalodimas , Michal Simek , Simon Glass , Tom Rini Subject: [PATCH v4 7/8] test: dm: fwu_mdata: add test for fwu_mdata_get_image_guid Date: Sun, 19 Apr 2026 16:31:47 +0200 Message-ID: <20260419143247.437733-8-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> References: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=HOCF89v2; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , Add a new unit test for the fwu_mdata_get_image_guid() function. Signed-off-by: Dario Binacchi Reviewed-by: Simon Glass --- (no changes since v1) test/dm/fwu_mdata.c | 48 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/test/dm/fwu_mdata.c b/test/dm/fwu_mdata.c index cfe543d8a236..8624ccf61f79 100644 --- a/test/dm/fwu_mdata.c +++ b/test/dm/fwu_mdata.c @@ -143,3 +143,51 @@ static int dm_test_fwu_mdata_write(struct unit_test_state *uts) return 0; } DM_TEST(dm_test_fwu_mdata_write, UTF_SCAN_FDT); + +static int dm_test_fwu_mdata_get_image_guid(struct unit_test_state *uts) +{ + efi_guid_t image_type_guid = + EFI_GUID(0x09d7cf52, 0x0720, 0x4710, \ + 0x91, 0xd1, 0x08, 0x46, 0x9b, 0x7f, 0xe9, 0xc8); + efi_guid_t bank_0_image_guid = + EFI_GUID(0x10057a86, 0xdaf1, 0x4f93, \ + 0xba, 0x7f, 0xb1, 0x95, 0xf7, 0xfa, 0x41, 0x70); + efi_guid_t bank_1_image_guid = + EFI_GUID(0xdb62ed3e, 0x6237, 0x4fb4, \ + 0x80, 0xc4, 0x1b, 0x74, 0xd8, 0x46, 0xa8, 0xe7); + efi_guid_t wrong_image_type_guid = + EFI_GUID(0x12345678, 0x1302, 0x133f, \ + 0x18, 0x0a, 0x14, 0x05, 0x18, 0x05, 0x14, 0x0b); + struct udevice *dev; + efi_guid_t image_guid; + + ut_assertok(setup_blk_device(uts)); + ut_assertok(populate_mmc_disk_image(uts)); + ut_assertok(write_mmc_blk_device(uts)); + + /* + * Trigger lib/fwu_updates/fwu.c fwu_boottime_checks() + * to populate g_dev global pointer in that library. + */ + ut_assertok(event_notify_null(EVT_POST_PREBOOT)); + + ut_assertok(uclass_first_device_err(UCLASS_FWU_MDATA, &dev)); + + ut_assertok(fwu_init()); + + ut_assertok(fwu_mdata_get_image_guid(&image_guid, &image_type_guid, 0)); + ut_assertok(guidcmp(&image_guid, &bank_0_image_guid)); + + ut_assertok(fwu_mdata_get_image_guid(&image_guid, &image_type_guid, 1)); + ut_assertok(guidcmp(&image_guid, &bank_1_image_guid)); + + ut_asserteq(-EINVAL, fwu_mdata_get_image_guid(&image_guid, + &image_type_guid, 2)); + + ut_asserteq(-ENOENT, fwu_mdata_get_image_guid(&image_guid, + &wrong_image_type_guid, + 0)); + + return 0; +} +DM_TEST(dm_test_fwu_mdata_get_image_guid, UTF_SCAN_FDT); From patchwork Sun Apr 19 14:31:48 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4551 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 422753F1C5 for ; Sun, 19 Apr 2026 16:33:11 +0200 (CEST) Received: by mail-wm1-f71.google.com with SMTP id 5b1f17b1804b1-488d3eec9bcsf13802235e9.3 for ; Sun, 19 Apr 2026 07:33:11 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776609191; cv=pass; d=google.com; s=arc-20240605; b=Sn9p2cnCjNpPaRjg4D1NSgbpSQaTr4wCeEDpNyx5l2bzDt5VU3ct84Bj84ARkZK+cH ioLPsiUaRqrt7x1GX86sXfUtwNhT2kC6QuppmtzAJ7NELYBVdhT5mX7vG/+ZSGP65Kvl qPbOXMk0dKs3JmuXpqFKfEy9+Jk7lQx7KtBb1VTZlqM/2ciucon26ZKTVOv+9IuhgR8g dg56euzO+G43fUWdddo0aeK2O/untQvHBRz4QSugToJMBAfIxkvPM+8SthegbhBI3jPN Y2P/5GNP/ivWPzMqu8UsyFl+EPfqTzfycrf6Y/2GbbLCJF/SiEFf8S3cCaMwoQMsVi7v wV5A== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=39EAlQHjG6mRtr8pLJ5XxAGL7ihsAVGjUUBw+xpU5q0=; fh=1lOHYMNf9IVjUhGZFIy//qhJm446Ok859WDqO1SkpMk=; b=QBkKVJPu9w0j86lfH134QmSPXIknyxb29P04laHZc0FJw66CDfRnOpK2KaCJTLBMvU Q4cDs1fs/emMFu/QmlKKCz+1EgJ9iK9qDMcDAAaiAtv93/m3VmKcymYVwssLJPCdpalq WxBQdmJuQbDt0/1hZrrHJig/QBZwDdMjK/+2FkwmR90fJBVlIGOjcYe1AieFGphj0UxA jyWxSKJr/nFxqmgBgSFdhR7UN42CR0uqKvo2cUY9cFDajjG2Pnq47tXmIMMv3+ROPV9n fqErj8zXDCEvhJwG+i27tvShj+XQEef6wMsSdMKuTCyRPGHvuC5uLOkY76/24Eo6msAq LoxA==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=VdhSGfhD; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; t=1776609191; x=1777213991; darn=patchwork.amarulasolutions.com; h=list-unsubscribe:list-archive:list-help:list-post:list-id :mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=39EAlQHjG6mRtr8pLJ5XxAGL7ihsAVGjUUBw+xpU5q0=; b=WR7T+EO+EexU9D5lFyr/piOSfs+xe/TRmqeSMpXDfx8p+UiJTcp5bH/YCvRVeTK3Ek LEl0EVh62kvlFm4kco18z3TgIcASk+pY9o/89+3rlHDBZXIP8l/PQu1f01Np9LnPZM6z l7uAcbasW1SrMbWEAjETyWdApTVuAzUvtq29s= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776609191; x=1777213991; h=list-unsubscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=39EAlQHjG6mRtr8pLJ5XxAGL7ihsAVGjUUBw+xpU5q0=; b=ISoJfGy73TrAefF0cASR1fE06WjqHl7b2rLcmdG0xIUnbUnM2KhUYZySMs6oKeb+u1 cTjumwdUjurc3hOSjh45sHehDCEa+VM261Op//R8W3465o4pIxPBcoXQrnLMoVstqDUs O6cObkMKcE1mifd1xeCjL+i9htB8P5QR6MIYlZCm3QHQyMbdGbxGb3PTCEti0rh6vpjS b3XPXfcxk4KaruEZXj4I2S38dcDNRakia1FsVTjMBsSqYI4CbhIADGLvVDPRovJNeYZ8 Z+sS7PRMOu8BgpxGJeEsr0fwT0Hypy4Qzwya4KzH9+xbW43wKT1o+XMQtejU2nJaR9GB VYcA== X-Forwarded-Encrypted: i=2; AFNElJ+OWtflx90U9Qcn4zqxr9AAdA3gnXFGz1eRG6sS18IRccuOdt438RvLymY1QDPjFHzO+o2Lw9U8PbaWjVrZ@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YxgLD5fMHmunt+ealyHlarXgN9bCPbnMuc98SEdNzCOlhW/rkFc +j5GoR/4PTJxCICfUciFUB79GTH7TNq5I483MZO17P1kBS6EgNfigKkV54vF/kKvgl+ncTMg7P8 hrQ== X-Received: by 2002:a05:600c:34c7:b0:489:1c32:210d with SMTP id 5b1f17b1804b1-4891c32266amr6130595e9.15.1776609190783; Sun, 19 Apr 2026 07:33:10 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiIkoRvMWKDio0Y+PorwPlCH3F8iEPBLmAf4MIYqu7B1Yg==" Received: by 2002:a05:600c:548f:b0:488:ab54:fc08 with SMTP id 5b1f17b1804b1-488f4a77b0fls39124335e9.0.-pod-prod-02-eu; Sun, 19 Apr 2026 07:33:09 -0700 (PDT) X-Received: by 2002:a05:600c:8584:b0:488:a14d:3d8e with SMTP id 5b1f17b1804b1-488fb74aadbmr107564055e9.11.1776609189184; Sun, 19 Apr 2026 07:33:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776609189; cv=none; d=google.com; s=arc-20240605; b=JOb44cHkyQS18ZqeOzB+syUKaRQ+cJq+ZpDvwSgXeqmYqsfrNExd36XQ9nPJaC57A7 5PEeSD/83fS/kz10S7soUkOBpzlBI814uAfdFU4Hjf3YP3hZdSoeG55Ej3OZ8s9hBJAs kL1n3qThWIpx7bkZGb/vMDBVwF0Se3mlOXJjTvjWd387l9HCRjF4C7Fa68GTXNXBVCfs 0pvT8KdODhxnlsUQfEk8s0ExCldKKSFmres+FPXrNejYfhegfiYntDOk/cBpjpT+Bix4 zz/JpnsXuYhMrsqpPMWuLSmI4Zd77T3mpwjH3gc9N40CxJQ9kFQVLIJgsAxBdQPb8nZ7 5blA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=Z0aGuMwDclvcyPdUtza4RjG7PG1o+7vRHLMxYH5Ix6Q=; fh=4lcPrNiBHn41j4ogF7mwB7ucqwr435pDYMtBJaLxbIw=; b=dmZFd5fcU7t9oYpB6qaQVTYBiIcfUhZ772NjQxL9f0AiaVpg6bVwM7MC3wMaPv5xN0 8Cq/NRSDjFI0WmRQINex8Cmo3wstSFMc6+3QrwmlvgXzmyvY0YLGddTG3YpnQyC3gW0y MYeE0THleLX2+XWh8dLcozAf2gJJW/vQvqvUdCpJmKtnsKf96mXPP2KR4lpYCEiHIqlo s54ClBybSWB8fsrdTlRMQJIbcSjxAelhIAe9dBLGsWKFvPlY0ca9ao9VStES7Lkjqv55 gVDbBSU2mL9NjuiWe1JgTmyWJFhKlU6Rs6JWdbSno7IABym02Ml72PUmJbks8zy84sJ6 /B9g==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=VdhSGfhD; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id 5b1f17b1804b1-488fc103530sor10872425e9.6.2026.04.19.07.33.09 for (Google Transport Security); Sun, 19 Apr 2026 07:33:09 -0700 (PDT) Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41; X-Gm-Gg: AeBDievBuNs3tN9lgX54KePVFA4Tga3pNjY+fFdyDSzfjHUPY5CIbWeEDbxPKeujF0J b/NrF3uk15ezlfpmZxJuTm3nXA3VrfW379WCeU1NlS99OFV/tXJuGAjKFxUg6SJLTg7Wp+yaBzb scVqxed/JSoE+WPZ32su5Ei4X1OrZEmnADlQKcqaKoUkm9VFU40WNya4rwcG0kXOo9fw+apPUjF m3xNJwL8GaNT+b+ywkNUpzt5ff72Rf4O/m95fKjqJjkz8y9O6ivMCptRiQb99Q39Es0A/FTugXE j3zr+zdt8Cqt+mxdpPpHoGavD4R8N3B45BNdcfulrlGmqmbd9MvaNoHdJWZrbeM5MXUkdbB8BSq gV22ml7pCOK7BEthGIFDjFj7r6feU5h8s+OYTAVLOoGbp5kBzRnJgjaiVOv1bln5FklNmp5sa8J FvFABWbZS0fr2a4JRz9tfoVfL1mmPfXMNJfE1FqM8JoTUFMUDg4Wk1vwA8yn+NHK9GVOcp11f0K xqx97Khq+kmK7IgFohq0GGt5gfv/44/g6gLesifStzZXYvoRkRQUed5Y7r0MMhYzES/FmtcAKaR 8G+F2wp+MniT/imQyGUKdWr0stddkoOG X-Received: by 2002:a05:600d:1b:b0:483:8062:b43 with SMTP id 5b1f17b1804b1-488fb771438mr123463775e9.19.1776609188736; Sun, 19 Apr 2026 07:33:08 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.homenet.telecomitalia.it (host-79-20-97-39.retail.telecomitalia.it. [79.20.97.39]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488fb755938sm86864245e9.3.2026.04.19.07.33.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 19 Apr 2026 07:33:08 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Simon Glass , Marek Vasut , Patrice Chotard , Patrick Delaunay , Tom Rini , uboot-stm32@st-md-mailman.stormreply.com Subject: [PATCH v4 8/8] board: st: stm32mp25: support dynamic A/B bank bootup Date: Sun, 19 Apr 2026 16:31:48 +0200 Message-ID: <20260419143247.437733-9-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> References: <20260419143247.437733-1-dario.binacchi@amarulasolutions.com> MIME-Version: 1.0 X-Original-Sender: dario.binacchi@amarulasolutions.com X-Original-Authentication-Results: mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=VdhSGfhD; spf=pass (google.com: domain of dario.binacchi@amarulasolutions.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=dario.binacchi@amarulasolutions.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=amarulasolutions.com; dara=neutral header.i=@amarulasolutions.com Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list linux-amarula@amarulasolutions.com; contact linux-amarula+owners@amarulasolutions.com List-ID: X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com X-Google-Group-Id: 476853432473 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , Enable automatic detection of the active A/B bank by retrieving partition GUIDs from FWU metadata. This ensures the system correctly identifies the bootable partitions even in multi-bank scenarios, falling back to a standard bootable flag scan if the UUIDs are missing. To enable A/B bank bootup on stm32mp25 boards, add the following Kconfig options to the stm32mp25_defconfig: CONFIG_FWU_MULTI_BANK_UPDATE=y CONFIG_FWU_MDATA=y CONFIG_FWU_NUM_BANKS=2 CONFIG_FWU_NUM_IMAGES_PER_BANK=3 CONFIG_CMD_FWU_METADATA=y CONFIG_FWU_MDATA_V2=y Signed-off-by: Dario Binacchi Reviewed-by: Simon Glass --- Changes in v4: - Add patch 7/8 test: dm: fwu_mdata: add test for fwu_mdata_get_image_guid Changes in v3: - Wrap lines exceeding 80 columns in test/cmd/part.c file. - Combine run_command() and ut_asserteq() -> ut_asserteq(1, run_command( - Add kerneldoc comment for fwu_mdata_get_image_guid() above its declaration in fwu.h. - Add log_warning() messages to fwu_platform_hook() to catch inconsistent FWU metadata (boot GUID found but root GUID missing or viceversa), as suggested by Simon Glass. - Add Reviewed-by tag of Simon Glass. Changes in v2: - Add links to the XBOOTLDR specification in the commit message of patch 1/7 lib: uuid: add partition type GUID for extended bootloader. - Update help for 'part start', 'part size' to mention UUID. - Add kerneldoc comment for fwu_mdata_get_image_guid(). - Pass efi_guid_t by pointer in fwu_mdata_get_image_guid(). - Add patches: 5/7 test: cmd: part: add UUID lookup tests 3/7 test: cmd: add unit tests for part command 2/7 test: dm: part: add test for part_get_info_by_uuid - Pass efi_guid_t by pointer in fwu_mdata_get_image_guid() calls. board/st/stm32mp2/stm32mp2.c | 32 +++++++++++++++++++++++++++ include/configs/stm32mp25_st_common.h | 15 +++++++++++++ 2 files changed, 47 insertions(+) diff --git a/board/st/stm32mp2/stm32mp2.c b/board/st/stm32mp2/stm32mp2.c index 43bc583378e6..5cbbbc322a3a 100644 --- a/board/st/stm32mp2/stm32mp2.c +++ b/board/st/stm32mp2/stm32mp2.c @@ -208,4 +208,36 @@ void fwu_plat_get_bootidx(uint *boot_idx) *boot_idx = (readl(TAMP_FWU_BOOT_INFO_REG) >> TAMP_FWU_BOOT_IDX_OFFSET) & TAMP_FWU_BOOT_IDX_MASK; } + +int fwu_platform_hook(struct udevice *dev, struct fwu_data *data) +{ + uint boot_idx; + efi_guid_t boot_uuid, root_uuid; + const efi_guid_t boot_type_guid = PARTITION_XBOOTLDR; + const efi_guid_t root_type_guid = + PARTITION_LINUX_FILE_SYSTEM_DATA_GUID; + char uuidbuf[UUID_STR_LEN + 1]; + int retb, retr; + + fwu_plat_get_bootidx(&boot_idx); + + retb = fwu_mdata_get_image_guid(&boot_uuid, &boot_type_guid, boot_idx); + retr = fwu_mdata_get_image_guid(&root_uuid, &root_type_guid, boot_idx); + + if (!retb && !retr) { + uuid_bin_to_str(boot_uuid.b, uuidbuf, UUID_STR_FORMAT_GUID); + env_set("boot_partuuid", uuidbuf); + + uuid_bin_to_str(root_uuid.b, uuidbuf, UUID_STR_FORMAT_GUID); + env_set("root_partuuid", uuidbuf); + } else if (!retb && retr) { + log_warning("%s: found boot GUID but missing root GUID (%d)\n", + __func__, retr); + } else if (!retr && retb) { + log_warning("%s: found root GUID but missing boot GUID (%d)\n", + __func__, retb); + } + + return 0; +} #endif /* CONFIG_FWU_MULTI_BANK_UPDATE */ diff --git a/include/configs/stm32mp25_st_common.h b/include/configs/stm32mp25_st_common.h index cb679eb1be22..0b0267ae99b0 100644 --- a/include/configs/stm32mp25_st_common.h +++ b/include/configs/stm32mp25_st_common.h @@ -8,7 +8,22 @@ #ifndef __CONFIG_STM32MP25_ST_COMMON_H__ #define __CONFIG_STM32MP25_ST_COMMON_H__ +#ifdef CONFIG_FWU_MULTI_BANK_UPDATE +#define SCAN_DEV_FOR_BOOT_PARTS \ + "setenv devplist; " \ + "env exists boot_partuuid && " \ + "part number ${devtype} ${devnum} ${boot_partuuid} devplist; " \ + "env exists devplist || " \ + "part list ${devtype} ${devnum} -bootable devplist; " + +#define ST_STM32MP25_FWU_ENV \ + "altbootcmd=${bootcmd}\0" +#else +#define ST_STM32MP25_FWU_ENV +#endif + #define STM32MP_BOARD_EXTRA_ENV \ + ST_STM32MP25_FWU_ENV \ "usb_pgood_delay=2000\0" \ "console=ttySTM0\0"