From patchwork Wed Apr 15 18:31:28 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4535 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 AABA140CE6 for ; Wed, 15 Apr 2026 20:33:06 +0200 (CEST) Received: by mail-wr1-f69.google.com with SMTP id ffacd0b85a97d-4362197d1easf5453646f8f.2 for ; Wed, 15 Apr 2026 11:33:06 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776277986; cv=pass; d=google.com; s=arc-20240605; b=MQuLbC4QybVT5VXDHw+IldDw42J59heh1WK25taWY3uxas3ep7SWG15nubVBMLxSmb NUzEM5hLVvmTWsLYqa7pX2hSebowamnHySeEcJwU85aRyrkIE9bi+H5av26t3xnVMiOJ F9uc5W9DLBVs28KircER6DIQFoqwqfjde5MhNyqVMocXv7zy0l2DQ+zczXOGHI00mfeB 2nj+lymiUG+389tiZNLE3dGtowhz4Ti0olUGAbq0cmpDZxKg/iamSX5xU4zbpC5Yj3vc /LIBjTcjzFZ7t+AboVpMx4d3coOeupqAsJU4TSSRNwWbFcN+RowyNNx+31SKFTi+oO7O gv8Q== 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=tZK+L/Q1b4Ff8zX7uvmP/gGgP2mVs8QuAXKwB9LKJ4I=; b=aKJUlMfPNqM/xf10xZqDgstC3IYynSNxzCeNBGTRjU2TybQCqocCrXkS7Xz0nDBJBN Fc7JgPSFtSLdFoMZ5a2dk1e1r6yitioqlt+cgKo3R+pXuqvbmsJsI3N5OFaeeN+5yM4c 7cr1X4HGCLUVmU+3UTVGm07+K8ZjmowTmF11a1Y+szYWuVcpKo0i6dfcYt1Qt7RFW0sK z9PRZqvOvSRQTOr306xJN18zQ365mvfTd8azPQUDsLA7IF60V58kfR3zP7B+LeUnachm azIcJwcq5QCWUtYi/UcjILtJ//wZ0FM1dGZDCveJMIRAA9JtM/+UCN2rRlY/KSyANxIO axdA==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="S/qSD9xT"; 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=1776277986; x=1776882786; 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=PdW0JhBDU1cbdbCcvr7mpOh2pT8eNkj/9k5q1zlK/+RKPdASxoP0OQ/oHnN3VedcXX rRm3QUlllxoqVF0irR31OtolRCl/OL/0PCZek4093vlQuleUX8ZtJf3/1qqwG+4E0NXb nHIYofx2/2eIdR17jAvOmD04sENibOcq1YxP4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776277986; x=1776882786; 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=o96shk9V2nU0GRnHyOl7+MbiwI4Dkg/kbno5+l/hDd+vQsuSdPegKY9q2QTZT802Uj +y3BkMTCUh8sBV+Y5dbqSklKsJcaY7+ER6erIv01XEPJNsDBYYY4RkajjeuQECDWnIQI xaDPGVj2N8SmUIcJkRj5eeiXbQShk1nA1e1Ck1aTLCuj5ay6lu7Q5c8RU5x0GGm0XAXh 5j5AD1MMu46N6OmZdFepkjYgbgzFlD9FHZrl4K3yAienj6mj0LTWf0usgPx02oKMgi4g MvM8mpBiR9LSvTDCKSYGD5Ppqx+R4bMbUM3OWP8JOJ5VlUJ9A7HXlWsdrOsSSR24Uv5v YcEQ== X-Forwarded-Encrypted: i=2; AFNElJ+UXpI/dM/O/zZd1ssdpfHXmW0t+Hv0fOte/LcpyxJESMkQJgtHCT7SO1D1BOk7Ngqt4XzCtJ6LcmMLhr+P@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YybFkOm9XiMtSCmEUP2NVN9D4akL5KF0Zf+SZxxzqdkaD1PlWlX cZnttkG5g/Oei904Li0MkLIpS8dJfwP6za+L3OQQE8r8534VCV74kv7vx4Tlj6cCDVA18RJDnkr ZQw== X-Received: by 2002:a05:600c:8594:b0:485:46fd:7887 with SMTP id 5b1f17b1804b1-488d67f9a73mr227338475e9.13.1776277986243; Wed, 15 Apr 2026 11:33:06 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiIZezeN8uqnO85BpTcqRCr//Qfrk10VdqS4G94I8Z4poA==" Received: by 2002:a05:600d:6443:10b0:485:3f21:7f96 with SMTP id 5b1f17b1804b1-488f4b317e9ls402895e9.1.-pod-prod-07-eu; Wed, 15 Apr 2026 11:33:04 -0700 (PDT) X-Received: by 2002:a05:600c:c08e:b0:488:9619:9bf4 with SMTP id 5b1f17b1804b1-488d686093bmr221162025e9.20.1776277984449; Wed, 15 Apr 2026 11:33:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776277984; cv=none; d=google.com; s=arc-20240605; b=laB8kaiTGRqPfWsdTssa4vCeFdGY/zPrUxsdYXNVIPXpawtu1EB97qkQEnsh7UxnFb 7obfQXbwSTjvbJwDzAhZiH5yDKU3Fc0sssqI46Z040rxNFvCijXo+V18COsimocWx/7S Y+OFIeD39aT7X+aZ6l9kj1m/Jp/2NXGRA8xuC3P1G6KFGPHqO7I02VPsC7aOoVaXGgd5 Qz9PKCd6R+ZN+7AawtcsUOnS3pPGP1CKP9qq+zA+r/gTX4nQXEp1KmZkRLePvvxu+jap +x/rOjquByGCIuQp8V/KmulBd8sSA6RKoXm0XkOpSMwCw8jZT57WYr67UL1lYwCaDlDk wSFA== 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=iOk/cNNfBBTdUYUPd1qB0I55RmAEcyORh2vyFCAZuLC56PGsF/idUHYZppLlaXW7YF 6/oRpkNBMgapzm9BoQ5O+fD0j6+C+vyp9c1M6dbSaTroXvlwAKegUS2YzGk+7TLXrfwK nRlkeiCsxPJKhPN44SvOE28JKShdYjT9s9I0zeNdM8gDd0I76cpqQoJ1MplzgDfRfUXe U+YXwqpCo0Tum5cT5RGm5Bp/bDrRjy65yOO7XUpdTKHpKdthvfdaqkvibTdM35u0QVSB tOvKw2EmFv2VBv8tppgdxXYFQK5IbQ6/xwSmVqUARfijz91GwX/MA/HrPB9CDTHH+932 Waug==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="S/qSD9xT"; 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-488f20b590fsor5087955e9.17.2026.04.15.11.33.04 for (Google Transport Security); Wed, 15 Apr 2026 11: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: AeBDietFQYgX5yNnP/V/AKsh+BcTGvq+YdJJ1XbEbo/zdwwVptDU4JpjH5U+/SGJMth zjuCPu3IM9wYacBpQ62ktkoQnIuT0F9phAcPddOM5KCFcpcH83KXTj6vgAtmDCNzImqGHb8e2kt 3/OiOQsE7twpZpgmk1bJvjvE73IMiW6CZA323H9E4zReqZtyMHajhPb3Pfp0avUFPHtC9p5JWDc HZMJRM5H5nnVJQ+UQteTOL7JXzymmftvSdzfuVWMDAngPf0xbEzUbwFxWvDa5AtDJoV60oYiSpr pkx7OOY+KNqrBVor+vxx46y8i3fmffraqfOR1ElMDBWKKmyaSysqbozgYLwzJatn7d/x3T7IIvs Gl/HsxFIDb2lITrw7K4p6dwP+40AOYNlmevTbzztqm1AKi0PXDrIq+gVFwobSEB7jI7wRr0mFMB 6qGc4AIW5TNrP9esRXNcjL++K1RL84ooOIsqBrIDtMlHEoUioeoNp/AbQBL5VoaJMGPihGhA3ZZ N/nKJqcXPDEPWcTCUr3D7EBNennD7lWxT+JLJ/OlrX9vFrT+i8TcrpKCQ== X-Received: by 2002:a05:600c:5298:b0:488:c014:34da with SMTP id 5b1f17b1804b1-488d688687cmr325853095e9.26.1776277983903; Wed, 15 Apr 2026 11:33:03 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com ([2.196.40.93]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488f0e72980sm34953115e9.5.2026.04.15.11.33.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Apr 2026 11:33:02 -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 v3 1/7] lib: uuid: add partition type GUID for extended bootloader Date: Wed, 15 Apr 2026 20:31:28 +0200 Message-ID: <20260415183250.3031030-2-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260415183250.3031030-1-dario.binacchi@amarulasolutions.com> References: <20260415183250.3031030-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="S/qSD9xT"; 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 Wed Apr 15 18:31:29 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4536 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 1A1A53F2F2 for ; Wed, 15 Apr 2026 20:33:09 +0200 (CEST) Received: by mail-wr1-f69.google.com with SMTP id ffacd0b85a97d-43d7b7bacddsf2398639f8f.0 for ; Wed, 15 Apr 2026 11:33:09 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776277989; cv=pass; d=google.com; s=arc-20240605; b=NNx+dD1CYJ5PbKy6VM6bG5nKyCCz1ba4hOaEdi4rHcjg5gJlQ3CQh+fVslk/I6UNF8 ASw8FJQOWSpcTB3x0OUzJOvtN5rP8IaWkLyksn35WX6gzvw/a7J2iFljze4+SqACiITs +WIX7WaDvvPH0UjZz5VChAYzwi7qDOFJSfZ3i57IWGcZMwTkSOyJxLXrdVCu2+H7p1ZJ 1Fa3JQuC8RS/MdZH35AUZDYO+QFVLFNeEFe0J6jsqPVUDY1/OuArzyw5ZxmDSx8FoZVP Q5OR50J0dKQLhDW2F+XPnsjq2RlVNMBjTzErICE/+Cg7ErC5OkDGrMTwZ4vC//OIFSRl mLQg== 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=P2ts/Y3K46GPQ5qb56/cMPgBR0xfM8JhYn3/7G6Qovg=; fh=+LmAztGSMCCLv8GPfr1K+NQXqt8B4RYfVXvmU8RZGT8=; b=KnWG3qjOyA2CWoaHJdC8KJXhYBCpw7eDvw+ikGqvHQdm4BtlZxMpIEDjAyDNxi2wsh c1dOq7N+zSZg2Ixfqv+Y8f4mBILRCPMrYgqYD4Tq2WsmTBRyeFSz0BEj6Yu7jFZLrk6H iXLmE80Msc+AQDp2X8WerOphdzHQ4Smb+DP2cBrKx0Sn73th0f5ff+5ZV9WZ4TdoaCbK WKbVhm1EfaHmEMoUcaMkocATFkmL4YAWxHIDrYYoCdJzG/4hM9AS5qz5OLDErLA950dF YmrAavr5bEvXjrc9s8+GO6hGKyUM32ZdWuO1C6T2Ajm0bA8yEc+HU3h1G0u+v35imSEV rOhg==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Y9clb7JY; 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=1776277988; x=1776882788; 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=P2ts/Y3K46GPQ5qb56/cMPgBR0xfM8JhYn3/7G6Qovg=; b=TgWgM7KeKDNaJyFSN4709q3WoyIHihmNuskRXSU9oECVP/fFZr5sLWyn12Nz4zsVKW q+GGWzqMYD3SrLxbUGLm8j5cJ3cS6/DTwY5CbzACYH38+RkRXPFK5+7oVJ+uPI8YFlSL B3/NU0hCEH73q5xhXpYA5afYYSNZ1/4FO7BWw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776277988; x=1776882788; 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=P2ts/Y3K46GPQ5qb56/cMPgBR0xfM8JhYn3/7G6Qovg=; b=QIIH8PnEne2OTGk7fRruXLS9f7M2mLqaC8gSJy808taduKL+i7D2n5W61JzIxxUm4D ZHOjHMsxBMc8sREHO+KmCIbLDZdRe0HtiLvay2WjlXH+lsEb0MfgLmqYmkF9v8DSGO54 P0qpoakKlGiH9XmGKY5ZS18kZefCLGZj1kGJI4KeLhYKv75D9ifkNHfpY/ayIjHPu9WZ nuOhr4ugfvx0cC/bKzmbmqW4+uyHau4tnu0VX4GQn6KU2qgIRv7eDuIomve0pocpNKy0 Jhh4NsVx563GtMV7dAiwN4KM2AAt/IfKGZqhAWbA+iMl/KAueGBBrKRRxzrSpJRvz+dH m8fg== X-Forwarded-Encrypted: i=2; AFNElJ9gRN+QVlaTcDUrYJoCS7hc7PoY1AMHfAEI8FeTZsRDgd5R5xp4bsyvQMsQqfdWMW2araBYTzscepXut311@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YwVBkhSConA7W4IG2+JE3VqJKu27+J6Ci+gJEk5ojJReyzv4qjD h30bppgDk/qb9d3IsaMasPpJDOIGlQhvA55mSz0Cuv1PA5wjZnYj3Zx34UJcn5DdwovCbDvLxS8 h4A== X-Received: by 2002:a05:600c:3f0a:b0:488:afb5:6a21 with SMTP id 5b1f17b1804b1-488d68764b0mr314186025e9.15.1776277988632; Wed, 15 Apr 2026 11:33:08 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiIXSZ509ruGIKGNW/XUABfaJ8TIzTfTZbZBuNGybtVBvQ==" Received: by 2002:a05:600c:5254:b0:483:7631:bef7 with SMTP id 5b1f17b1804b1-488f4b18c95ls604695e9.2.-pod-prod-08-eu; Wed, 15 Apr 2026 11:33:07 -0700 (PDT) X-Received: by 2002:a05:600c:5292:b0:486:fe39:28b7 with SMTP id 5b1f17b1804b1-488d67fa48emr329120295e9.9.1776277986816; Wed, 15 Apr 2026 11:33:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776277986; cv=none; d=google.com; s=arc-20240605; b=S1Ltk6Azzt0FG5+wiqpOPwJEdU7A0R3YOWKsZswxDNsv3K65oek8eGBZFcRYLJRxSa MAVHJJXU/Y1zvLrwEBT2hICG3pr2FPZk9QAPilP4nJCQNnC2zfKiLIcfMTxqXia9ABOE BVRO+BZ6GYNLGSA8tcGS7IMcgfGRZPgBMWF0FXEMkYMIfCd9L73Oeh96wYP131MtBR26 CWt2rJxyHLA3fs6/omll26Ea0ESTt0jlqWSEweqD/7uXOfPfmeYHM/U9k50BaYrORdVJ mzTCDOEF5bUwQVhgzN0KTv9yQLvzDqTTmT9YESH0+x9UAaEgiNKyzGpz7KLUSZc6C1Xc 4eMg== 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=4qwQtwx0F7OAHSpH2BRtevmG2YeLdtKDK5EN3GCzcuk=; fh=SMPGxW/KHFhQHxzd6fQZDt2aC0c5400YFwKZgkeAPhk=; b=c1pWmZp53aNgmG5hrA7HBcYOJkobWNP5rTXAJuT1uw6MAQhlVfFS0iR/nndvwsrtI5 SQ/rChOoSyP4+BZeR9h+AjQZARPYwiEqhT8TViak3iPFTSW/AiYbTQvB00RqtYhbcyBF hl9aMcsEUhuC5EOKxpG1QladwWa5QSekKAGdOMQlyeYBA5whhU28AJbWfxb6ZRB0PSRk CEJXmwZQui/v5L8wWuG2exO5yi81vldbobWzZCfZ9FNHRHvU0SQU9L1m7pH6M7/Syjuy clKFJtd/KQhadFJhL2Yx9kXM43fjLoZacCSRdkct2z8wCAK/vNCAk4+13U2yRVluy7u7 LyWg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Y9clb7JY; 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-488f208655dsor4686255e9.19.2026.04.15.11.33.06 for (Google Transport Security); Wed, 15 Apr 2026 11: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: AeBDiev89D8tryyOlOqemv8RoCbbmRyWS3pegkLn7lJqzf0r4mpCDlbF/VGkLzNTtFb MG2gwfqMMPSENuOtgd2LCj64xHSE0jCfL3xe/WP4HKH+39cJQ56WEL8bDdt2DO+ZEEdFj4OceoF CawPohUCyw6/pOpoG7/pVXHdrZ8bSwzWBFMukHIHMEbQbwN2miEI2g3SK97plTO9KO8zhYbEbku aEwLreyIL0AIIN4PV4MIOOZjv2FPcUylXO2oRRXp8ItNhhTpm4mgjLS1GbfB1APHpkruHBBrNLE XEz6iIatb4UI9g/1HEjMJZNBPYeAX3H6zDy4hjHMe6IF4KCHlBjdKo7XNKR9S08WGevbZeckhQC PNDZBGW1DWzxHvYkeKsVKZqz3QIVnKaD0yPsroKTugr+Vsbbv8D4FxQMiNipPS7xqS51VjFvr6M TgyHaCGq9ECphCZjLAMIGxbWB0Mg+tADakN0Q+OuJY3STXyMkd1x01t879ZcZbeqwWqx60sGPjF eyMxoELV4cvxQBFaQDiK/fyev78KfYTTGyqA5rfYaohmA7XdbM3ZoPZzA== X-Received: by 2002:a05:600c:45cd:b0:488:a82f:bb96 with SMTP id 5b1f17b1804b1-488d68c7fc2mr298052595e9.29.1776277986317; Wed, 15 Apr 2026 11:33:06 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com ([2.196.40.93]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488f0e72980sm34953115e9.5.2026.04.15.11.33.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Apr 2026 11:33:05 -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 v3 2/7] test: dm: part: add test for part_get_info_by_uuid Date: Wed, 15 Apr 2026 20:31:29 +0200 Message-ID: <20260415183250.3031030-3-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260415183250.3031030-1-dario.binacchi@amarulasolutions.com> References: <20260415183250.3031030-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=Y9clb7JY; 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 --- 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 Wed Apr 15 18:31:30 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4537 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 9F1BB3F2F2 for ; Wed, 15 Apr 2026 20:33:10 +0200 (CEST) Received: by mail-wm1-f71.google.com with SMTP id 5b1f17b1804b1-488d2cd2674sf60380005e9.0 for ; Wed, 15 Apr 2026 11:33:10 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776277990; cv=pass; d=google.com; s=arc-20240605; b=E9rLubFv6fh35al1Z+lRWalR63D4VjQWfuF2ZmPvhLJIOOQwXBl26zuZRsIyR2rGkW vg3LJPzwfaN66EZtDj4bR0nUZMAEFsPNHWualvsPmP6Uri6MlSc8AUimWZiFogZz2cuQ Jyjqg33kaOOu0Z7HikHJH6HsFhNjtcBEEVG9wSxxU9yWRViZltXjV5KaECRJb8jdP7TC y0GWsZqA5/R6woQywJ2jmA+mksh6E7gUqcSyD23SIV5fOGZSA7cEUv3VFoxUM1CWSVhi qCRIlT96CSfbGzoKquHj5Zx0mGVpMj3SRyM1ZNBv3cGoceylmFuxDxDx+BX/MwKJD/mt 6Y4w== 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=hXURwqrA574EUsLzv3lVvUlAp5Bn7mHXsflR0Mff1Bc=; fh=u6XJWC1QXeqESH+aHJrTVN8/bVrGx46TrJktPqrxp8A=; b=KFMQqlPqVwCskXQUoHk44jDTZd3Qogko/jNIw3vw9LzQzYp4UG7c721DiWKngqOzJI lQjuWrMmyrORupf6huWWPYSmpaDZMilG/V4Ixn5vNIIQ2nDC6VKZQIuvUISM8VPUfkgm HnokE5ijGat759Ubzs5rCeFWrAj2k5PQPW2Kv55zRzDbDYn8qUWOEqRJajEF9N1tHKop ROB2doaESN1sSg81hQBiry+sNuMJdvBWBCKD101OEZPHjYF6qq1r7TsuLaUnlmEOWmQR UZn7y7oIePGofzCmxm0SosF47uWxALLYgovHh81EbLZfvPou1sJR/zxMr8eguES4KX6+ cfmQ==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Si3GuSFf; 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=1776277990; x=1776882790; 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=hXURwqrA574EUsLzv3lVvUlAp5Bn7mHXsflR0Mff1Bc=; b=TrnYJYKxELmlwLBKdagV0HxrVVENw1TfmkG7XR5oyzGd9az/mAYmH3750fVos5mQyo u9i0J+1bqnyeJJJMw14Az4acvs7eZUna4LC5qx/ODUi8rrHZ2nMHuJGOCMMRzBpVFgwF 0GA0is8khzOU+uxlnAfJx2Eqx3+OnaCOg1g7g= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776277990; x=1776882790; 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=hXURwqrA574EUsLzv3lVvUlAp5Bn7mHXsflR0Mff1Bc=; b=o8/fjaDgNpvSnGkIbN7lASagubicYcWj9S26Td9A+Qo9J3LLm8RNXHt4I8Q9uEQiim gU0N/+rQGBuOYepN5laqXCZdAG3/Zbaru0QT/sKmZOKOMA7bAo6/Z5JVsI1YG9kTpYdV lLct2aXRLz982xfdHtpLEKkej9e8lyFqHl+3C1p7+3jsxmyZGw5MztucVxnl3NJc8AdK Ugj2fEk7SHrbgHdTRsRCWg2sQq2ozGhAFUysE8atQxLWSBr8kWipmvJmFeGhwHMu/dNS kZrwa6mlbrQMA/hw19W7aEASkX+ScQZ5HT7VuO45IbeZmaBNNqZZa1O363c48lAy0A3U 68QQ== X-Forwarded-Encrypted: i=2; AFNElJ8xa/yYdak8XS/pqxY0VU0THzJ6q4seDVezhr07IA1LPaVerdMw0wwA8Tj9tkA4LujD0bcu+GqUvZ1K2OG6@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YzN1e8K3lqOHZnzCTi/HjQea9fFc//bvamuQkwj/2j5MuPxMdse GtwhLaUoRkDm/Ct/WZjF2o+3YaWbqHzJ2G4anIumsFVCsKYHQBTkhpDR7WavY3B4Z1w2Hw== X-Received: by 2002:a05:600c:5298:b0:488:c014:34da with SMTP id 5b1f17b1804b1-488d688687cmr325857235e9.26.1776277990196; Wed, 15 Apr 2026 11:33:10 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiIJFbVOFgtOmj7eUfOXq3I9+bSsNeqyUWiFHwWD4qlBpA==" Received: by 2002:a05:600c:6dcb:b0:485:5b8f:9459 with SMTP id 5b1f17b1804b1-488f4a79f19ls729615e9.0.-pod-prod-07-eu; Wed, 15 Apr 2026 11:33:08 -0700 (PDT) X-Received: by 2002:a05:600c:34cc:b0:488:869c:edaf with SMTP id 5b1f17b1804b1-488d67d882cmr326817405e9.8.1776277988442; Wed, 15 Apr 2026 11:33:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776277988; cv=none; d=google.com; s=arc-20240605; b=FOMdlm77Nq6EX4v+6xIBxrLAEkh8WmdNJVrJm5MCGcW/AE2wMBBXi+n75/xezalzIO R0J1HV0T5ZdIM01uVEp1BUEE/SCkHh1lCefVIzxVueDSa9o/6bVKu3U9Xg6CbkIcCqL7 /NXzCKAgcca/R7doI1SS+loWHSAO7ZRP6cBOZuBR6npHjFWItCFdjLzAB4ztNgMMk9eQ ZJHDtvlgEGpOqW1c8jSDmLNFdgPKfgM3lxRjzJrcoqf0oT97oHYeAp6VPe8V1XZV0hrV 5v0fGKKyXOv33uOQIBu8palTfIh05GMQvT7IdvOLGtiRm4wtXvnRMBn9L3Gg03C/E+YJ ZNfQ== 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=605kfiPAmyyhG0L5m4NA62wmfJrRDN9SrX8UGlTD18M=; fh=iOSXNO20E50uqB5bSGCW5gVExo5tMbVMauwiDgp1z44=; b=Ol+Y4Zc+4WvCwPcBXjUPFDJo/tVKxh+6HFLntG5zq1ifPUCGsYn38IMGnWz/6mrxMU GGn0XiyizVYVzmO+sokjfWihQBvfV0YGeDieiMdMnZfBRi5gKPVZMa/k0gT+4iOk0JDk 0GhJAaXlwMjmEh1eOkQg0d5t2gmSvf+YgvIi/OsH7qiPv0+Ow+jstRWg/6O4Xed4ZWig B1hl3woeddLwxyutsL8BMypk0WAoVYgA9Apal8GrEUwLQ2bvAyQ/9bBnsIrvPCLh8/Hm N2AszGTDYvNYonlfcjUkoX2uUYvtNmH4iLDhKysT3RTi4UWOndJqOYGV0AOkd9PBh+Us +vuA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Si3GuSFf; 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-488f208561fsor5330135e9.15.2026.04.15.11.33.08 for (Google Transport Security); Wed, 15 Apr 2026 11:33:08 -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: AeBDiesmjavmtcEYKL84PXvGB8SgabJNRR2uuZwmoa0ZE1O+Ky3YNlPLXWAr9X87ERV /3gn0PUmpFDJ/SKeLY0lIZdNpX6zfnp8KUz6b5a+T+RpkHZN7338pbgzutzEOFsCvGzhBlbBZ6h 7JdUOiRCwqaRBrktYIDw6+xF+5NL/sZHRt0umkO0q/z+fpnp/68X7m7N5h4uNTfZQ6dd66Ug5pF fDuae2/xfliW/GzIJzNY7b/c+3geygb0sjEcNEkCnljRuzOdgVz36gOVpOSQl2Xg1X21SWUDV+O pTTWFAwK7qTVdt7nHRYypx9qI9I2WCTbQyj9lkwplncFa1CsK1bNIn136eWPrNXhjU+fyBzdq/S RvtRk6BbhnCceVej2VhZSlgw2+/SuB/8PVM85zGKV2ktoQw5/BeQWYelZJ4sip0RQ1T3RlUX2oM HjGSCd9f7QUvBADfyGEXCfTpk0STHun71FXQZj82TYaa+kO2PLDs24P9luW07awD4YHRK6p+6tK R230dqwz188SWKThrcWQNbZMo0NxIxg/4ir2AV+pfGfdziHqz8uPa12Wg== X-Received: by 2002:a05:600c:4e45:b0:488:9439:881a with SMTP id 5b1f17b1804b1-488d67bf6f6mr336739085e9.2.1776277987902; Wed, 15 Apr 2026 11:33:07 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com ([2.196.40.93]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488f0e72980sm34953115e9.5.2026.04.15.11.33.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Apr 2026 11:33:07 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Dinesh Maniyam , Heinrich Schuchardt , Marek Vasut , Simon Glass , Tom Rini Subject: [PATCH v3 3/7] test: cmd: add unit tests for part command Date: Wed, 15 Apr 2026 20:31:30 +0200 Message-ID: <20260415183250.3031030-4-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260415183250.3031030-1-dario.binacchi@amarulasolutions.com> References: <20260415183250.3031030-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=Si3GuSFf; 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 --- 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 | 161 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 162 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..f808ddbc87eb --- /dev/null +++ b/test/cmd/part.c @@ -0,0 +1,161 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Test for part command + * + * Copyright (C) 2026 Amarula Solutions + * Written by Dario Binacchi + */ + +#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 dm_test_cmd_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; +} +DM_TEST(dm_test_cmd_part_number, UTF_SCAN_PDATA | UTF_SCAN_FDT); + +static int dm_test_cmd_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; +} +DM_TEST(dm_test_cmd_part_start, UTF_SCAN_PDATA | UTF_SCAN_FDT); + +static int dm_test_cmd_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; +} +DM_TEST(dm_test_cmd_part_size, UTF_SCAN_PDATA | UTF_SCAN_FDT); From patchwork Wed Apr 15 18:31:31 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4538 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 4894A3F2F2 for ; Wed, 15 Apr 2026 20:33:12 +0200 (CEST) Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-43ea8161c3asf2135883f8f.1 for ; Wed, 15 Apr 2026 11:33:12 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776277992; cv=pass; d=google.com; s=arc-20240605; b=gqtoHUAKBoXhEC1F1QpErrd+qGwy7gucV/MKi7/kI18A6Tv+f9wII6vGRSaPfpHNMI RMF9tBayitCSoY6Wd/7uv/P0wpO8R1AtJHb4Xf5c/eyxH/TElFUtQ7BpYskVbuhNzYiN +muRnyW1rLRRRpVuoYmP6KDhXRmettXTuAkTU32tn34841YRCeD6AanxYLskfU+8IuwJ 3JZDOOPiyG9QHhBf0BvGgsXEJ5yT1tNznCBKAYIsTWi2+uWIsbXSmNVM7MRYIkCaHxhS e02/fEmg2U2VJVHdq8uUQp0+wwx2+Lq436JxxIF38hTH8gwrD75kTJUVchQtQYnqA6yq 9xvg== 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=+W6hfl2/wAHI0yd6HlXI6GBkchnVYpAYNi9Hk7HG/1M=; fh=271jXOoLd3lUBxZSgb9xqKO2pd1kyg7+nqjQ6wHHdTY=; b=aBTS6g71pCv3cjbpqs3H+GtV/DVIj0mnBLlMUuixh92WU18u62xkfljLebd2QDQQQ+ hziLIohLox3FZCfO64qLsSgOyjVfkwHfM5ST9e4lG/RzIEwTQTwkRx4aR48XLPLxJJUQ g2rMgl6eSV5Mt/QFVfP8+oBoQFhKs53hZ4M6qYiEH/q81Fio6p4Gei4SUwF6kT2eXObe GBwxpleAQhPTvmYy241zi4BV1OCyiLMsdNxHPmie1V59lCQ4HPPTWn8lnX+1C+wGxHbn e/YINYO83K6PN7QRjIrL+JNOkgteSqOBatb12IzXW51N9n1fwejYOgIBihHgP2WS0W3k im3w==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=hV0xgZHX; 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=1776277992; x=1776882792; 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=+W6hfl2/wAHI0yd6HlXI6GBkchnVYpAYNi9Hk7HG/1M=; b=a9P7Kw1kw+Js4w8ETdQbuje4NVrDQUR5to0vePiLe4UdOKP6p1mln3jMMTZKjcecas sYjaiCH1ZWyqUzvoLY23+lzfe5VEvCY2IkH/Dq1F5IrBofKFmnGVAyaM9a/Smux/gy6s vDmCldLyRsbHuum+grLkx0xge83PDAIonHT+I= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776277992; x=1776882792; 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=+W6hfl2/wAHI0yd6HlXI6GBkchnVYpAYNi9Hk7HG/1M=; b=n9AQFSm4a010gNzAPPoi1olxXm9VMiU623ukgtOizZWkJOyhGHcY21QKDym9Ik6w24 AUteqiaJD6aHS5nOq/0kU+jj6Hu4frp3QZWRpmzHS4nK4rmUbIEc8GmbT+3GiXNiwtSW S4PTPw+AG3GHq1OAPeGHoSDY5C48Pu2MHC1nHgQXvQ5viqTDA6M+M9Qapbyt1CEb8a+9 xj1veqGzLLYfZYiYXwtgHfzh5nUVoYE7wRLeKH3ukai//PNVxi2yOm66GtVcpqBZBIAv Nmeo2HrKzeLY16XAI2Qhvk8pnN/MSXTLH/+8r0OaRfgSTlABIBYC2plvSk7kZzgBeTiW i5NA== X-Forwarded-Encrypted: i=2; AFNElJ9gUHKdTW6jDKNCQyB/UdCAn0BLjd6YP73+iE2H0xviDFM+rBWrsMosu8QUbYV1NJ51zJFEnS4YiYpajFQ+@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0Yw152E3s/SVDMX5/Xp3na8L/G+b8ky1Odq8IesW4oL+f5Koa9b1 ZQfeG7ZgUZ0eykFpeRidxeLXVf14oN3uasvEGZjv0HXi1oLb7y/+q6Io3et83kDt8QgxPduOUdJ a0g== X-Received: by 2002:a05:600c:3b24:b0:488:c078:bfda with SMTP id 5b1f17b1804b1-488d688d2a1mr316478125e9.26.1776277991848; Wed, 15 Apr 2026 11:33:11 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiIcvFmf2xEoAmVP2yo+V8YnaJFOTm5n3wAb7FCPDDjIDg==" Received: by 2002:a05:600c:34d3:b0:488:971e:25de with SMTP id 5b1f17b1804b1-488f4a74142ls596335e9.0.-pod-prod-03-eu; Wed, 15 Apr 2026 11:33:10 -0700 (PDT) X-Received: by 2002:a05:600c:3b24:b0:480:2521:4d92 with SMTP id 5b1f17b1804b1-488d687adb3mr329485085e9.24.1776277990062; Wed, 15 Apr 2026 11:33:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776277990; cv=none; d=google.com; s=arc-20240605; b=BswD91Ni5bsxhBOtL52rjAMDrvWP8nvbzVWStBdlmNA0g0UmTx1wazdUnVDzTTTvfF NirktpkkiEyWT5x6OpwpBbL/fPGlduL/nITwOY082c1kF57b4pgZVSJagyRBjTFE5/E4 qv73BUG8cd/J/w0ogam+hqzlhIdEm09IyZPvesBgZ/PWVOyX/I7AnnZsZeaedDWut5GE 8y6pOjMOejeJKemqkW9VrGCWmTpr3ML41Xu1rvAtVOQ3JTkcl+5VY9xZ+gMbQbcP7YFq tVZOnv0A5pX7iNunsMlPwxWyGhqG3OtRcelJQooioPX8ZQexWgedjWCG1C+h4q2o6TMv N95g== 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=z3+8nQO1lWNU/GNjJEORKTlW5YmWXTKb1BAPU2O6ctU=; fh=m48xu6nnYHLvvvmMgghe5OgVv/RULa4LC59SBiDtwXg=; b=UAQcmOiRJjsZ6d66qpI4tbwHEiVFvGEFa9DjPA4lMs/Voy+rrAkmQSDmRRKVEKdXte EdZblnuQSK9uUWDGzcmXyPdhcBPcDh1hVjPj4dwTeu58hb9oKSegLSKOQclyNW2LXJfK Yk5KUMsBXHDiQXw4uR0m7bGZjcwPMkNs3SgDJnfuLETNa91cxhre0IXc5wcnQYoeTLpU rInxllr1nmcwJWwtDkGA6wSXPFW937NUAbUVL5ZX7ssFe0N8m9GDWLYnWqj465+IIoOl KCux/OYwhZoy6xxxG+e5vS/hPEcQw8CnWF9WSLx/t+bsMS1ER010KJDL226krjDofKJB U7Lw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=hV0xgZHX; 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-488f1e870e8sor4409885e9.15.2026.04.15.11.33.10 for (Google Transport Security); Wed, 15 Apr 2026 11:33:10 -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: AeBDiet5hpV8xifkBrO86QLNiuCBPQz83ocRcfFEUeMqGjOxPAec1IMHbsLjBhkx/ug r1+WT/LhwB7MNEujjrGo9d26RTkScCAMSmgvBJZQSO3B6b/LrpxEtHmUa71V7NSKAsrfXlx0gsn 0hilpOd80Z4OnFpMcNZZxCh3cZBOa3a+S1sRn9zVb108baaHNKpg4KqNE3Afeu9KQ86IKmG9y9h LpxJB/l7V1Q6FpYm5E/8sblZIkJ3q3oYBMtSHit2RTxM7X/Y41c1V3Wq2jzCrNX8eszI0iSUN0Q OxXaEV62gOLbgbmYrgQNyRfsKJoEnEnG+FrrCwEomONWYe/Kk8nGvOcfj2yiEv6XeYyOjzldii1 sScH9fN+I6zD7ZqXG7+s07u7SwxzCmVv27YeAdie2xXjAryi7KX2hylo3XdVC6hJb+wkC24H/Bo m1pTFwbicKdmNfW5yjkZIiYYf+cmGjiVLPNHUbkmS+a7QUAFmlDZ9c+YKup39MNCyCHxRjrMwi7 b2/QGiEBb3XSyfpppaiFN0RC2v7+rZ26Fo4LZlLQa1sZxRYHs0L+cYtwg== X-Received: by 2002:a05:600c:46cb:b0:488:c51f:e04e with SMTP id 5b1f17b1804b1-488d67f3a0fmr314282065e9.13.1776277989582; Wed, 15 Apr 2026 11:33:09 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com ([2.196.40.93]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488f0e72980sm34953115e9.5.2026.04.15.11.33.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Apr 2026 11:33:08 -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 v3 4/7] cmd: part: support lookup by UUID Date: Wed, 15 Apr 2026 20:31:31 +0200 Message-ID: <20260415183250.3031030-5-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260415183250.3031030-1-dario.binacchi@amarulasolutions.com> References: <20260415183250.3031030-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=hV0xgZHX; 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 --- 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 Wed Apr 15 18:31:32 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4539 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 B495A3F2F2 for ; Wed, 15 Apr 2026 20:33:13 +0200 (CEST) Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-4836abfc742sf54704185e9.0 for ; Wed, 15 Apr 2026 11:33:13 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776277993; cv=pass; d=google.com; s=arc-20240605; b=dQLiJdaBIoRjlB4h/Gd/eYBiqRhzqdDZ/kpZZ99+0fAlclvDqJwdezN+L3883d+DRG r+zpFrz2Cc37v1vJHCZgAxeZVh1iIt9aXusOUFM36Dr2c6iIGBTZjZzqMxMUELRMEnKD KYSR+LWRl/wTy6uzbGQxLrsPPuVbriP83RXhj8G9cjTqzF8ipbdyLdSMO2LOGtCmDemg t6E4PMS++6bnjvH4njxTNhPpxgJ1O7B2VTEfpNsHpQaHgWCYaKOaMFy7W4Ue/1Crq4no /n7VB/DquRj5RQwmT9siJcj1i0VJ+AgnZC2XRS8XFKs8tG6QpV1y4RKMh3A+4arqHCBf q8vA== 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=+D6Dr6ZZNxCI3FyE+H2MiF33d1EP3AVjLmkTn94UxIQ=; fh=xtEDPYuiaulBuLaxdH9qM6X8dCPlOIYAUn8u6FZdzoA=; b=LWnRLL53mBscZbhMYIg42chg0ua0OUhZdaESjClx0Hm8K4DhUe8M3iskViAIyWxYD1 czWMAMWHfdZAcQjRXhWyJx/WrKPTxhY3cOSQ9INCOH5SfAiXQ9XYIlEJWENyKu48dOQX t/p8UGI1Hf/F2Z7LVmZykOKSsDeaH2X6T3P/GINL6TxV4yCjNOrReUXTZNC8eu7tmHHi 07ZAUhPNSwZGTnxjxP5+uK+HMqFICjwhE0vITQpjA1ncq9orbtoKE5J9l+2UVFHEETLQ vvGq4+wHgs9XLR3VS494PlSwPNyyppzA/QnQmlu0aMi1Y9Vpzr/D4v8645jyP1v8aNAO /Cqg==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Dwe9CQXg; 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=1776277993; x=1776882793; 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=+D6Dr6ZZNxCI3FyE+H2MiF33d1EP3AVjLmkTn94UxIQ=; b=mtGJQdirR6daOfyeG2ZWF/fzaZq/uIFfwUrZPF5432hq2ZFESLGZHj/PvTg9d5fWpV L/M554BJK7sboLSisFknZY0wrPJke3znb0s2gDmS+5s7g5qxboMxK8fAAgH0UrmyOd+B Z7Q8zkVNAzeRyQXicCZDRgb6vZluaCOp7En3M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776277993; x=1776882793; 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=+D6Dr6ZZNxCI3FyE+H2MiF33d1EP3AVjLmkTn94UxIQ=; b=iKvjTqpTQvHTEcpezLqkG2wfJ1kq+QA7FdnhLHt6cwH/ZQSdfv0XTISlORXczhYDOC YC6FG1DvtyXUakhjHZEGdfS2xuGbbql5vmbtxS3cw96+knIpOh80NbIg0tGblkwRr9yK cmp+/sWuNPJvidYJ2nDTddpf+0nrUoBHJK6e7nD211Pk4gYFsDcel29dB6k2a0fBIc9J o+L13DAIWYdgZU6o7Kpc7w+bgBITXbe+uddNHiAcFOqOVO2cMaNvZ5Vcfc3z0H4wRhGb zSQfwNidt+IBTd73qJ/HDLtPJTuow+Qqb66SyMevqIxH3l8jp/oYqAkN02keXKBbq6MR TBLw== X-Forwarded-Encrypted: i=2; AFNElJ+0mnujWzgwoXfMFHrE86+aL0BfYv5Um06/VGywZD9Fafz9CrnOS8DL4Vf94szaP/JLvOak0xZp0JvyCALm@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YxQItHgDFFdAtJajp8FaTqxSyEMgOz0V9+6Y9gbFY6iNLCpvph9 QVpx6hc+ccbAGqoew9B+XtL0t71JDEW21jVik/2/GeSeLaAzfX6J0+hKlfdN+N0zxF0EUQ== X-Received: by 2002:a05:600c:8907:b0:488:ab1d:dcc5 with SMTP id 5b1f17b1804b1-488d6ac1bafmr212113345e9.27.1776277993291; Wed, 15 Apr 2026 11:33:13 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiJOQEIEt3EuDFSAZwUNooPPQRguoS5ckINbc8WtGrHE1Q==" Received: by 2002:a05:600c:6dcb:b0:488:8433:1d20 with SMTP id 5b1f17b1804b1-488f4a7a143ls404785e9.0.-pod-prod-04-eu; Wed, 15 Apr 2026 11:33:11 -0700 (PDT) X-Received: by 2002:a05:600c:8907:b0:488:ab1d:dcc5 with SMTP id 5b1f17b1804b1-488d6ac1bafmr212112115e9.27.1776277991559; Wed, 15 Apr 2026 11:33:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776277991; cv=none; d=google.com; s=arc-20240605; b=YCsvLU3pEaHC8lFfkF8HBhQSlGC6qYQ6X/CIW7HD2fG5NeMojkpoaRwRg+NwvEsh3a Bd3wAj7DUy7sChwgvvwH6gdP4uUOJsJ6/WvzWDLOF7uYa/vUHiCmVexftlPiWK9gv6kM dLIDDDoulg1wYLJyHYAak6pzAhZ6+L4hfZ0sKDduRsvLS9ZVG5oexFQPJ4sPmASuUSku zlrmFTvaDJ7zhIBvzThjDZdD0dCaMllbVOsFK/fFAy69mTD2ssLxd/5Vg2BbEEg/4K9c t9RghEN6HKpJcweJavp5J4e/JnlVlIPc0eY2UMexNEe+oJoRWUWPebyZvWxAJqTISPBQ SRLw== 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=KMrUAAtuax7uvVus6CWUVq2R8GJCStf3Di3MtyLYARE=; fh=cqGgBtLgo9Y7k4Yog1LltCfcfqjVrN8Vq2ZxieGu7Jk=; b=IlkfrxFI3s6cNF/r6aSQh/aNKth945XcUoz1nmwumc1rpC0jzK6vTWODRuJajK1Yib xo9rs1mm2pvZ+U3nKS+iqtEoEWDsusxtk+yYkos9dnGd8YnRbxObiaBPNznBG8m/v032 aJCtIHFHKrOl3Bbv5SNyEPBSPjXbwUZvcBYdjZ3JhYbr+y6havPFskvb0GDEsZpWM3z5 VE2aAKJ8+YzTnZazraVrbgziGQ4UaLlc2U/1u20xURIDfvzGXSxmwI3ZFdndB8k8mydB Ibdza/E898leq1mzOA/82vE3uwH6g6M/cpC1sFEeLqQGzMgumFbYKwRwwDTwIH5ZajFY 0HXA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Dwe9CQXg; 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-488f1e56dd6sor4289495e9.17.2026.04.15.11.33.11 for (Google Transport Security); Wed, 15 Apr 2026 11:33:11 -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: AeBDieuAGwPyyRFUEUGVbeD+UEscITZp4DqvuVa4U5O3Xog86WZF6fipu4JjlxQrbwf NgM4GM9g0FwyttdevE8iqDJbXdLDl1mqGnk/FgnwWmJsBTJ/dkDxfjVDchPO2LwtYZ1uHiXuSU0 VLDtEU9SgKKp9yPU3csED/GT58l2BkOyqMBGPRaf4h9n2WxdxYQibNxhDvVSf/JX61vqA7D9Z2J z9lRRY+h0tH92m7kOv2F20F1+7qjNbd2IZJM5FqPX6hfQe01Czx0QPNfYxZZpQH5R12dg6DTH2J 4kKFoNp3dO27hHHB5RgVYEVT8vs196HrXz7NvldTI4JVjt6nMOYgM6GZtbyecRX6ZtXRthCS35f Pg+RwyMQgIs6/08vpXifNNB0ZnBJmvzoHAnLiZXI8QOJIB6WoNPAWnpW4CPgStUCMGuGBcG+t6D AOrMH8XvFggIdjz0gIcGch7+UC0jk4Nhx3sbF7QgEIeIviuTQFQ4O7KSCwEqCUyJcbaTK/NnYZu q6b6Lx1J5osEqudGjNzW2tAeGUrHhh/lRo/es69ASzgQAMN4+AUWqraeQ== X-Received: by 2002:a05:600c:450a:b0:488:a882:b7 with SMTP id 5b1f17b1804b1-488d6ad17e6mr304461325e9.29.1776277991125; Wed, 15 Apr 2026 11:33:11 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com ([2.196.40.93]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488f0e72980sm34953115e9.5.2026.04.15.11.33.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Apr 2026 11:33:10 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Simon Glass , Tom Rini Subject: [PATCH v3 5/7] test: cmd: part: add UUID lookup tests Date: Wed, 15 Apr 2026 20:31:32 +0200 Message-ID: <20260415183250.3031030-6-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260415183250.3031030-1-dario.binacchi@amarulasolutions.com> References: <20260415183250.3031030-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=Dwe9CQXg; 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 --- 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 f808ddbc87eb..3ac6b02cc368 100644 --- a/test/cmd/part.c +++ b/test/cmd/part.c @@ -76,6 +76,20 @@ static int dm_test_cmd_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; } DM_TEST(dm_test_cmd_part_number, UTF_SCAN_PDATA | UTF_SCAN_FDT); @@ -116,6 +130,21 @@ static int dm_test_cmd_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; } DM_TEST(dm_test_cmd_part_start, UTF_SCAN_PDATA | UTF_SCAN_FDT); @@ -156,6 +185,21 @@ static int dm_test_cmd_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; } DM_TEST(dm_test_cmd_part_size, UTF_SCAN_PDATA | UTF_SCAN_FDT); From patchwork Wed Apr 15 18:31:33 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4540 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 8AC1F3F2F2 for ; Wed, 15 Apr 2026 20:33:15 +0200 (CEST) Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-488cc31ea57sf45801615e9.3 for ; Wed, 15 Apr 2026 11:33:15 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776277995; cv=pass; d=google.com; s=arc-20240605; b=HJjdGouNjlbQWRj0DlMqVZIu4U2iJ2aTh7vxqd7pdAp63XQzsejuUOJUjrdXp30iwO p+pttU3VMOWuDMpIVQta0G3awbhw3Up1kBYjnHwGXEtzm2bHVNZ0HPnyqKWVNSQqRenv /jL+xDgczy1Y8RaKn/B0gkPYfTfEPO2LRT4PJpfvmuGkaM2J31+thNxcr5IHlgAwququ LOHWydreJOAj3L9ys4NGIgjL+GHUcPfxVFTixx8JoTMSdMI7Ivv0nPZgmd7ee55B5STT dGcxC0z5I0/mioSHz7EV9VaF0ha53WFiXWp/a+hz/GwC2/3v3PD7e7UWDQD5vyzRKzSL ECgQ== 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=fHtCV5w8Fi9fYXYt7hPmd63f3+gGQAJl+tpWRUPpRZk=; fh=Vg7vsSvdCKT485gG9nltxKFvu6eBXH6YikSJmalNMoI=; b=YfsvEujYYF9pwCeDcprIORkJt0HLTatHD/+3ZFKLPgrZBpY5TH+FZeZQqXfA4ekkks 7DnLdH3GtJRAVh5JyxfOgWb9n6AK1eZsoJ6VCFGYJfEYaAm26zOO6ynZwW22o1q5afp+ 6uqyzk/rLSOp8hnHIM+wrT5JuTfgETEr2X1pSQjkhD5X6cGxow0nol79EL2QUxq9vGCI utMiwt94V4HMuP6JeKFazwnc0DRL/Z7vURTM+u/CS6EmyJEUs4qq+ix9+bZj6zq7f9yD nSu8Pd5rmkx26YdRWVspofPQ3RG1owXe/lFxiQAsSwa6HHVzD/guw76F0T8XlhC0G4Ch 7Mlg==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=YzkXFoYT; 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=1776277995; x=1776882795; 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=fHtCV5w8Fi9fYXYt7hPmd63f3+gGQAJl+tpWRUPpRZk=; b=dSi/3SUavyo9MGEhL4aSfjvg10zY6tJvO50PgfvjiJoGZphiyUukkbtw0kX7rF+0G3 63m8b1nzfxnYDp55rxjDl3jlo/uyAxWtfCQFbfsFKX8i4wAxqoGoTQaIcMIRHyBeR+iX 1q4JTJZz9xhF4VoFUjoHD9oEkudixtEXvj98E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776277995; x=1776882795; 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=fHtCV5w8Fi9fYXYt7hPmd63f3+gGQAJl+tpWRUPpRZk=; b=CBKxNk1xm7zMapPFsCcdOMaaCXj7F4vz/uBx21I+03ob8Q+M48jd7TtoSCT7qZTlTH eZrkGLtwOy6Ow0CT4wn1B/iYCrCORtqOEp1Zvcshf2uLze8ZxSxzINj6hAJ8kr2VrGHE yz7ft+wKcadQivJaK4qqowuj3OGiLaSoTdAqWgED2MwfEhu/84f02GQPrwb7Qt1Hhqgx OirVBK2oElmKtqmJhXr/XcJjMQ2rywD1RBd131MDqla/NPPpt1qj0IIMxdtJrs9dBX0E GjAfO8yL6K9inzJymTj2tsi3DPD85Xp1vpc2LIsVTMxqaaiCxQnB5R/QjbjFMRBvWUvL FOjA== X-Forwarded-Encrypted: i=2; AFNElJ9/CdM4YlGr6L5aNIHUMvOEq8VvpkWO/XHIyJjKkdsN/9QLE+gjxcH4CCBW9dLXK58n8JZB13lCy0lddDta@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YxslsqomAH24pZZgQtNdaxrUAtTqRLhEXZT3SPaz6iFU+LXMrY/ 0mb77mAoUY4kkbKD8++1+FuSRkhm1RYefn0fMctpco7ypVvtpYRu94WvctnLfof9PBLJJrmg/r/ wCQ== X-Received: by 2002:a05:600c:a416:b0:488:7f69:4abf with SMTP id 5b1f17b1804b1-488d67f946bmr240224685e9.12.1776277995166; Wed, 15 Apr 2026 11:33:15 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiKvKbDa/yZF6ObPwtgE4KRT1PODc3ZKG238jz0WRXLpVg==" Received: by 2002:a05:600c:648a:b0:488:9454:b51 with SMTP id 5b1f17b1804b1-488f4a708a9ls512815e9.0.-pod-prod-05-eu; Wed, 15 Apr 2026 11:33:13 -0700 (PDT) X-Received: by 2002:a05:600c:5249:b0:485:7f02:afd5 with SMTP id 5b1f17b1804b1-488d680079bmr305210105e9.13.1776277993462; Wed, 15 Apr 2026 11:33:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776277993; cv=none; d=google.com; s=arc-20240605; b=O1rEHcAMnqdmSfrxHBD4RHPRD01w/s1BqwJALyIYbdUNptwQQAQAqoGAI+Lu7XxgC5 PY4zoCD1ZZdBnkA8f/Y5mH3DsmmKYkdbIYQFfXkzJgGbmxk/hbVIBnLJvTsTiqzU5pRe b7vN8VV6LDj9IhHrJVPAO2BUfgUPvo+C7/iCCJlHn2MSMC2Z2ErEOF48ZIZtrUR7LBya MemK38BEdW9jKzh6DjaJbKu37L3lKNNx4rdLoebFungH/Ep3EH3+0yWNoHgeRnJP5GIY wHr6V87/D4xZKwQY+jbHaxw5NpM3zvyVrSt82TY4sN0rxWp7pzTtttdbP6nZzg5g4FCh 6Spw== 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=uCAR4bHfuzLtCYDWhI3svjkqvfHud+Ornn0vBeRVnY0=; fh=p7hMND4jtPHylywAszv7PI5Sz1LnGjCgu6NzVMiguXk=; b=T8JQQTB0f/OsbKQS9pr9u/nkklvTfo9bX2EDeduPTC5U44WkfvJ4fbuaR0Y06/Be0/ kyUJbUS4DdDR6z4Mq+4Ddrl3rKfYhoEvhyxzh3Yd/yBbRHQfyqgdueOg3ns/pAASklW9 ebALqKMPKmOrBJS6WEfBYHkjvba+AUxOwHXyRWPjyukH+bfi7cnahoYIjVPJf2GY0RBK L5TJpwitvTltCjRI456ZN2UqjCvQPzgbfmpCN3H0h43h7L2M/jIzM/VMDUr1x5VVjCmb ZjnzdsPZM582g9yL4xmeX+t/MFmoQdnxEplfb92BTfyP341WsiLOMla4oofCjfy1ag9C RP3w==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=YzkXFoYT; 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-488f1e55bb0sor5554975e9.15.2026.04.15.11.33.13 for (Google Transport Security); Wed, 15 Apr 2026 11:33:13 -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: AeBDies08S+RIlGHSWq22aW2w8virEKMYh1v2ysdEk8euceNnVZALy1TPeJ3NWymtq+ YjgIbnGf7rU0B4EMchd5QQvISzL3wYgNU9SP19IJttI/cxzV+Gv69k0ve3doZzVA2408Rwwthuq AQOKygd1OS4ko80LiPIWqUbsNSLqlU7Z5/xfLcJTsPR5x8RT78z6/OYEdkTcbrLjH+Cdlk9HE/X B2SChpuaGhs5pddPBjqOxhiiVMhElZZSGPzvQ4qmPAWe1lLhpJOA5Dmj9lsSwbYVxONjGKUPlzh tYRmUdmp21gtL7Kds1kkFVoMPS8GJJPcH7gV5Z0R43hJyGIxlvIOaVtO784Qt/meuasokEItX8B sg6cSOfFApJvj2Ut2a1tnShgzZYNBLOjn9HZyggm8EUWKWFCujVcKDGF8t24sGl9oaTs2oLkMm2 AdI0Yl63AGhR8aM9lpxJFBmz0Foh22e5H/Uqevyru6c7cPGXr83gIMAYG6aoqWDw10cGpRlHNKC Ja/lVvvnJ9bYBmoaHgsu0uZfzKELOI0UzuL22ALf32Yfmc69T73N8t6/Q== X-Received: by 2002:a05:600c:8b2f:b0:485:3423:727d with SMTP id 5b1f17b1804b1-488d688d46cmr293152095e9.26.1776277993020; Wed, 15 Apr 2026 11:33:13 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com ([2.196.40.93]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488f0e72980sm34953115e9.5.2026.04.15.11.33.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Apr 2026 11:33:12 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Ilias Apalodimas , Kory Maincent , Michal Simek , Padmarao Begari , Sughosh Ganu , Tom Rini Subject: [PATCH v3 6/7] fwu: add helper to get image GUID by type and bank index Date: Wed, 15 Apr 2026 20:31:33 +0200 Message-ID: <20260415183250.3031030-7-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260415183250.3031030-1-dario.binacchi@amarulasolutions.com> References: <20260415183250.3031030-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=YzkXFoYT; 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 --- 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 37c613014d18..e5e4907a2d43 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 Wed Apr 15 18:31:34 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4541 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 7B71E3F2F2 for ; Wed, 15 Apr 2026 20:33:17 +0200 (CEST) Received: by mail-wr1-f71.google.com with SMTP id ffacd0b85a97d-43d03db814esf7313083f8f.2 for ; Wed, 15 Apr 2026 11:33:17 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1776277997; cv=pass; d=google.com; s=arc-20240605; b=fKAhuKGQX6MMFAMajBksra3mNCUzYa4INinkpWqWu8v6565bbjXiE+u1vc0kvu88S4 cJxSphM31im5g6BGNzwkNIaimFeuYbfhW495fk3NJphRu+vZLcDZv4+zN9AUI9JTbcni CrmE7UcxuafpYu7LBtroqWLpiRgvGhLUQKdmSp1FTZq+oEpMReZcEFYHTb4ZL1UK15WZ uZSMPlSMcuMSMZ+SEqX6weePZMHbIgSxDC0mkj2SF+g10KktFEPr+5h8OY0n6e44vGLW REa2vH9F0yOhQorvHuY7fknYplnWqp0tdB81tDbyispBAml4+XrGR3pmjeIxiFMq/YFl baEQ== 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=2m9fmwjAYIRKGpcQcgJJ0C41/EF475H2uTmKVu64Bac=; fh=1Eo4YN9Sd34gC2KR46/oW8nkVIV/S/6igFrH+Sfjlu0=; b=NuuCcQQOy6xLKeONca+ObKWBvgRoPIMaK/2cttIhxQ3F0Y+pbHc3mxf6C9Sv23TN9M 9jj7/m8YcJFCKaiFVcyR4tgjBAKxUgBLa/Wprg9UWKBCLDFb+0LFDsJt0pRqO3QshClh EPsUx6MCjUEIbco42jg+ngWEOu72k840/lJgURfEjgam4A7zP8jZknd3rNccTN0WjR6X fpSMbJ8kFHDuynpmJKNurMpFdKA3q1D6R069SetawbDEWsOfavZTTDsGMOEp0b/EQcWr sjdm8h4+u2+DLn8slMTH/6c7kwvvJVVtryEkkdbUMnEf2n7zEUdyAiH4iKx39R1iRdPf nJPQ==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=C+x+GLWm; 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=1776277997; x=1776882797; 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=2m9fmwjAYIRKGpcQcgJJ0C41/EF475H2uTmKVu64Bac=; b=kYX1y0G1iWqgjuZ+GfBzQmO3WGCfDTDsPHDAC1E2eyx/HXCSfPTKqEeZQpEG1PSk8D 09VcZUgGnVsN29XAFw8KDw+0fKHwF9D3uuZq2oNuB9wchQkQsjyHDlMsMONsQRDsrw7U mIkDqFuh9PDh0yu7/5Cj6jG56lHCugdYDDm+8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776277997; x=1776882797; 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=2m9fmwjAYIRKGpcQcgJJ0C41/EF475H2uTmKVu64Bac=; b=ff6rTBxEVd8/wBFQ5b2/8tgmmIYe/2zTjBm8vTv3E39BrLyh8AQ252KZiQULEs3l7w tO2QtPSbXKJpUuClNT+lS5H7gPCYF+CNnGt3Ort8Rx+WquHXpWQSSy0VJaoLry3CnADs x/EcfbVbjRgiwqqKYaqk0c5oxHh1iQHDstZM9jN6Y7IWFhV80R/OdWxWfeRj8tqaXQZe qRDGpwHseCendCkBGJZFY5K168rbIImp6XpnCqC8paVJ/L75CWKuLAx+ifpCcIuCZ1Lb WcDEfgdi0fggR0nqzmd0Dqm4ef9IJaEFeQ+G3cwS48NRdjuc1gp2pQ1VRPsR4CMrr25N NuYA== X-Forwarded-Encrypted: i=2; AFNElJ+/yr0r7oQVZml+EDPjG4MbSlK3lmKISFcdQNt76OKpDIsSN0N77q/NGhvQDJmZ1bDZ3Yerz7JGFMiEkYtn@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YzOYPFgQ9yx8/f2DkeZ9M6M1KzZ+obGT/zgY13cW2HPfEec7Tr3 OFblNT2N46mxiRI+thJ7dAtVqdcGA/rt8gDswcTspn74cSTQEUWHEHPaAyHZ0mo5XT7Mag== X-Received: by 2002:a05:600c:c08b:b0:488:bc6a:528d with SMTP id 5b1f17b1804b1-488d68867a0mr227519475e9.22.1776277997053; Wed, 15 Apr 2026 11:33:17 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiJO0nkpuvc9LwnBsQybXAYuijxC94809eDjlowZ6Nvn2g==" Received: by 2002:a05:600d:844f:20b0:486:fa9e:92eb with SMTP id 5b1f17b1804b1-488f4b1d8d9ls287815e9.2.-pod-prod-02-eu; Wed, 15 Apr 2026 11:33:15 -0700 (PDT) X-Received: by 2002:a05:600c:8706:b0:488:a62d:76d7 with SMTP id 5b1f17b1804b1-488d67df53cmr324174185e9.1.1776277995349; Wed, 15 Apr 2026 11:33:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776277995; cv=none; d=google.com; s=arc-20240605; b=CGS2QI2nM6H2XiFf56yChsAHH3mTwGidVOo1wNBxap/eG4W/yvJZFg4S5fz5CXus0V QE6g7QxaNEDCKLp6wH+2GEHQiq82CvAVndrSYmOaiHlAzINuJs39S3iGX1lQjqnDlF5H ihJOwronGjuIvFqH3DhveIB210hU0PAWHRHkT9tQyTt+kR7VS/QtH3D1Fkvgb7aVCNTY L8/QNZLlVUcMdTbvmU4oHY/esyCm2yW2Kg1f/uitnzj/ghPXLzkhsAzyAr4oPShQ+X1B fRHDiN7EeBYw/fdVr4GCvIS75AmppNgw3QSHQgfV4TYeHl8WSmMeJXGBPiEXMugf3ccO wFSw== 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=gEPs0fGJ6OgadP+ub4aVqo1ljemvKjXa6np+zn4X2AI=; fh=A7b4Lcg6d42EDiThJT5tK+BuJbQ+NoCE2BQ6B+bO/SE=; b=OK4g2m7wYogrDqy9A2KGib7hO8nZx3Z3S9YM3ILkBBqMJSd821TWHhlxnyNs35VZVo I4unDfnJI81hX49AflwkRu52tykhH015N9Cjcz/ZTWPosbmf7xmDh5sCqXU+y/yaTIsx ThYokVSLC5CYigay4vZCcEcp/H3TIGBU4MzT5xjd2WZlsbsZ44itKgNV6pi58KKhZZ8K gDVcK7Mt5pD8VTc2KIm46iNRgrznd0dt44Sw7NoeZ/PZDj0oEJIK06IjD2YuCQXJ0mtf cG3d1AO94wdeFF31zISAN8NIAku9Y01ocUlNdhEm8eM6oTYSPsQWoQN57jm46Hxsfumc Pb4g==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=C+x+GLWm; 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-488f1e51509sor4501865e9.10.2026.04.15.11.33.15 for (Google Transport Security); Wed, 15 Apr 2026 11:33:15 -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: AeBDiet9sALdK1RElgExvTJWnluXlfL2P98Oh+Y4MM/xNH8N51SmoOSBtsLXluhQ1P6 oy+u/f5MqVSuczpnlAMN4b79MwfBHI3+S/fmIB87vljh8+MqEAc2kVDkiVrz5HoU7lngjBOWXVO PMSRhe/XldOGQ7A0wboa7uuoYLrcPbSPtEjlWMo44Pdtf4O85yHva86uMU6TWjV0EwSOkx6QBn7 D3EMYFWyS4U8poyA+DAMf3t/302ng7VMG5jprEpLxEtJ316puxhcVnRNda8R6TdBAYpQkOrAtb3 rLdnj/txmE0W+gDQMEYZRNcJOkevohJqcL0TUC5YRGxuiPDhCAFhFOrwZTymmxximnDcLGqwigo 4PBHrYWGPBTNTWhnCi1YY+ZqfCf3IKZPrCsQkJdX6s9uUFCFiYYk0vRaIIedRa0gchlWgPKAJA5 1UGVeP6s2Mm54p+8XJrm9B4k++Kkx9p5uYl1GxjQs/0tnmTxSqVXzsoHx+ALWn8qRzuQrx9/erb mmn6Nl34L+M9edDbGJkXnpdvN9wef0msadIkW4a6GQisGI96/wM6eAvHA== X-Received: by 2002:a05:600c:c0da:b0:488:b187:d898 with SMTP id 5b1f17b1804b1-488d685b6e8mr276633475e9.14.1776277994818; Wed, 15 Apr 2026 11:33:14 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com ([2.196.40.93]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488f0e72980sm34953115e9.5.2026.04.15.11.33.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Apr 2026 11:33:14 -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 , Quentin Schulz , Tom Rini , uboot-stm32@st-md-mailman.stormreply.com Subject: [PATCH v3 7/7] board: st: stm32mp25: support dynamic A/B bank bootup Date: Wed, 15 Apr 2026 20:31:34 +0200 Message-ID: <20260415183250.3031030-8-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260415183250.3031030-1-dario.binacchi@amarulasolutions.com> References: <20260415183250.3031030-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=C+x+GLWm; 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 v3: - 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"