From patchwork Sun Apr 26 15:35:26 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4555 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 3124F3FA5D for ; Sun, 26 Apr 2026 17:36:25 +0200 (CEST) Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-48906aa28cbsf55819955e9.0 for ; Sun, 26 Apr 2026 08:36:25 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1777217785; cv=pass; d=google.com; s=arc-20240605; b=VMd1biu+VQLqF3jvY5lKPeaiDaRBv9wf4zrBMrQ4S/bZuuPqgH68tveUkO2xOzcDRr sqq8CUcM1dxqNbNnVNThCRF3Afk5GNGaMJpkRcIJDlkcvAXMilBxGrX3/bTFtbhvbbxW xiTIZxfz6s28q+o8vLRH853U59HxU9pSPqyRyjWO2B7TZHz8Hvw7/OMzlFPk1AsdB3ky UdBUdrN/ZuZchr4oLRLXUNUWjYwDhoTcdEoSn5mptJJkZBgSi6aJLI9dO7s3JdC2nkqY c8BPeoXUuyoX9DSw3d4v743s5V+EUOYXEwIZBnM8Z6dS4HX993UPt8e+L5LvRAucd1p7 S3Dw== 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=YRF19LtXFLHr1v60dwOKHmUxQy4Z6ZmK++t2n83Txpc=; b=Az5Sz+gGLBs8vSSSbSTM2qCQ6NmiTJRJENzemMrBIbuR8iO1mMpCDWvJ6kv8Lyx1H+ tCt49jKDwiBt4awqRe2/kBIN8Ivmn+1PgVzWTIHJI3kLJT/mbj0N2flEzw2RGTKjP8el xOc5Kybm2FYbdnRhjU8JeQ2Q4FMj74uzlqyzkWiPpSX0aSktuWx0yU+ixb1PxVMMO6Y/ ZUrid78b9yMZGzWYisGWCdWhcHuZyQgps1Wqihf7VkbWtFlCbB5ncjhqgClwYscIJdG7 dNynjb/qxqEX4gL5wqCLxnxVYejihHyTloYQLGOzx/WTPPkpluWPPszZUfJZl1oO6AJ7 qu1w==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=pPFJKZdG; 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=1777217785; x=1777822585; 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=jsDjOBgChXz/lWOD89tkxDYWEBCAUWlJP+eo8APIhzt6cY0X91syJeB2v+q/7JzkME m97U+VfvvfvSjlWNYMfI3dI55tH1ywo1yuFkgpSAOefE7+v/mcRt0VJIy/f0qKIefh2b l4bA19zUBpGmpXhqGNYshITooIVxOs5cUHtcY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777217785; x=1777822585; 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=MiEWqU8e96dynZLjvMI1TfbecG3OdGsi6RUm3hyVYepcTfEO8aY8sxUyjnC0IaJCSZ 7AHcYA2EP2rPsVW86AoXNc4ILRbAcSB8RBphQBqtr9YFPCSGciWbZzrps7LaVE5UuTRH YIOwJYF7FFwrkdjlU1wQ16gahsdGKH59uAjNUpbhFqqJA8D9fsnBxdyE7cFvVkwh3Xue IkHwiyAG6XluiJ8pdzKon4nG6HjiTJoNCP4orzbxKmbyXpMqewBcmS7cViuueE1st+uX sKPHJORY31if0Q9hNsoql1Zugt9Fmr3OHb7Bb/DMhvdjoBfFMiDvr6kkQ6hEZitNC907 WyIA== X-Forwarded-Encrypted: i=2; AFNElJ/Lt4s3JJzZdpaT7xT3R8gms7KyShyDI2MroGNegJHBpd+1Kin9cSrHTr/s1nauOD6OPFX//wj5XmP5iXVZ@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YxJolHtLdLjrJoX0qOnel0B80j+64u1riEltGVas4qkOLO9v2fN H3UQbWqT+sLhjv/5HzMljIosdVw7fup6ZdOoC0Qf4nswUOAZgq4CY9kS/OgGPoKErtDRmQ== X-Received: by 2002:a05:600c:a305:b0:48a:53cb:8604 with SMTP id 5b1f17b1804b1-48a53cb8949mr270475645e9.14.1777217784598; Sun, 26 Apr 2026 08:36:24 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiIRJxvk/Ac+YNQ17FFSWgH28cAM136zLgR/rlWKx3O24w==" Received: by 2002:a05:600c:3f0d:b0:48a:5e52:aba4 with SMTP id 5b1f17b1804b1-48a5e52ae12ls17353525e9.2.-pod-prod-00-eu; Sun, 26 Apr 2026 08:36:23 -0700 (PDT) X-Received: by 2002:a05:600c:8b6b:b0:485:3c2e:60d5 with SMTP id 5b1f17b1804b1-488fb8859ddmr525722905e9.2.1777217782847; Sun, 26 Apr 2026 08:36:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777217782; cv=none; d=google.com; s=arc-20240605; b=VvtNtq2dZqE9PeE+s4MMWx8cBF3ZswPbnEK4uatMKYrKhhfJ8iL2B6z0JiajxomYgh g/eMX8WiXL6IaPjpRVFXRYMjQa8xf5iDuY11jVIvAXum0Y1aKheu+Ygt+eS/ckolyVAn 7C+Bw7fXtZEefVsJ2kQvfZGaWMGk/oO/WvCyCTg4hBN/1+Rgv/UJ0u/S5wLMwTMm02Bg mNgPqm/3K/vx74xMAJvijhGkbhHg1wKrvKTjecvIq3GFFm/cy7SvYhVXcLSFnSKvTd1c FdHfNnSjxmrf1xKgA+WENPIAQI0b8Ao7aD9+7F9SxfGeA6jFE74mh8DdW39yOByFdtJn 5brA== 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=xyTgZQpLW3y2EJRGql/rCxNePAR/wNSFc1lsJLdfvms=; b=PbTsBcJD653f2aFtdLOwMgcbYlT08syjlXFgqRKKBg/PLQi2ZRoTsAmBqgMCY3m2Gs HW6tDpkzVZzcqzUwz07Hg1qDtfGa8SkrM0tOk6zC8KSJ47m7u6JYhiufXJQzi5j8aX2T 2L4Nhu7eYNmTA8jFtSifE8/NsKOeG6a+ZF47fEj8j4M2wCvXQsuojgbfPv+NAQxxO4b/ 0K26mizPLjzjx8DPGHc6XTqcNR9gRGsOV56GvIamQxnqaFApC7P/ooMjc7IhpxZR6m5z 9AC/Qn6M48NmxgQ5IZXYwroBn85LvTCzlRuUKNE7AUWWLNVObout3Tn5WPVQF8WNLvik cbkQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=pPFJKZdG; 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-4891c23eadasor17198705e9.11.2026.04.26.08.36.22 for (Google Transport Security); Sun, 26 Apr 2026 08:36:22 -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: AeBDieuYFiboIQo0/Gi58BtQQuuISHXy53L0Exu8et51a1zbWCCw/6XKzn5Q23g0bFN FhHoSq1xzN5JFOkE8G0lfU6vNkssk3llBdq90VgNJ4SH/tAAZNHU4llvBPvXakt560RCz6Y1sRN gVabkqRWpJOgF8Qk2Z9n/O9PWvZnj3CFxSuJSgQ62Sj+MhXckUiUmBHtaJAvvnE1jiiPo3cEiJa 8lFHT8DskhRfF2wu2fc3ShAemsRMr35iR6dyUyu+Asrmckl1thxQiO+AJi7avF+GnCtx4/aI3KQ Y3dPRN99ci0eO1E0PsK5wTcQLUwJSUx7FXakS4tuTwSP8zQY1rHHjfnF9szLJfaee8Sjg74/moa /VTfQqhob7xcBXVmdDZagsyMyIs+LwCt/lFv2SDFoXABwXl/cctur/r/b2bjwZBBOvxbdHLCBU7 7w8lthCZDGtBeH/eVD4DAsvmc/RqLMAnl9lr4yxqHEEmmiZ67QMlVQWFYtGPP+h+7TXskgpBl/j RMuLeWjm45vVx85KcFTJ6t4Ydt8DWwpIPL0gd3HxmuSsaCsS29I8jkinEAvLTFD5qHwT7PrV7Ms UWQXPRXciY8oe5wUCNgHFHglJ3P8oSKdxDPma1VR X-Received: by 2002:a05:600c:19d3:b0:48a:55ec:c007 with SMTP id 5b1f17b1804b1-48a55ecc113mr320987225e9.15.1777217782390; Sun, 26 Apr 2026 08:36:22 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com (host-82-56-22-134.retail.telecomitalia.it. [82.56.22.134]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48a5499b0edsm388438845e9.14.2026.04.26.08.36.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 08:36:21 -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 , Patrick Delaunay , Tom Rini , =?utf-8?q?Vincent_Stehl=C3=A9?= Subject: [PATCH v5 1/8] lib: uuid: add partition type GUID for extended bootloader Date: Sun, 26 Apr 2026 17:35:26 +0200 Message-ID: <20260426153617.2039651-2-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260426153617.2039651-1-dario.binacchi@amarulasolutions.com> References: <20260426153617.2039651-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=pPFJKZdG; 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 26 15:35:27 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dario Binacchi X-Patchwork-Id: 4556 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 B80C140CB4 for ; Sun, 26 Apr 2026 17:36:26 +0200 (CEST) Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-48a5775d647sf52066935e9.2 for ; Sun, 26 Apr 2026 08:36:26 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1777217786; cv=pass; d=google.com; s=arc-20240605; b=MIQcuxeKQpqxMd2thake+dx4wIR9/0QO+UhBtXT8wvWEJGYA85NGgpCN0KBtf4W9P3 5Nq0NWXvD4b9dy7dQY8WmKPsnzYZ1dgyZuFU6txoWvFL2KgrO+BEIL7ZSm7w5tuZTQ3S Vl9xjBZCEMIRaN9eadNCt+4VQBAorH2g/tPqBtKNF7oVqOWen/HE2FddUSbaKNSl/G6A kMHI+x4Xbot/es30Z5alF8K08xtKNAX5klKUdiFrzpcYEz4Ot9NOsgHLchMZpSU8e5Is Y2Wi8sqCbz2ngd3PHdpg9tyXHRAHgQnx1Ajl3L2ugFtWwBLayHUlr9C068SH0ht0bi7f ia8A== 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=1ZKLJeeyqqzqPw1DIpZ1lVAkOFyJexNSveppYGj1hUU=; b=AS2p2tbPqLTYZ2TytS9t7sxXqj8LhcKtsqD3/rcSmSST2nC/No4XspTLZ/+q7V1gxT mK+vSt8tl6LVTFABKXU75yvO1iDp0PjfbCQdZuJacrSB9RyQlB/V46AL91YZbi6By5Vc t24krgWq7/iufKWRoMcVs8EpMTzFBrGq+zPHRrmdO3jZprzcz2lSSSC7DhcCj21b41Gv oBqtid0RrpWYKE/QMA8Br920gZj7Q87az3AieM5aayKQiGFUlCeAQC6CNDo9R1NG4+21 DTBXJUrqeTXCRIpYxsEOXixGj0ptE4zYCeudyQ7EqTPCaa3HIO06o7EsaLrm8KGChg1k gBMQ==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=OJsNLVF0; 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=1777217786; x=1777822586; 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=RXIQXNUjDrV+gcanyHaknOiP51Xe09QW4HUlwo8FfIGcyuURiw72NOSL/cLJt88miY UdimmahA04DtCNp+gqLlzGdzH47nffvhaZBqGm39IgstA6iAl8V3ym3HYBlBqdw5Q0wW O6c9EXKoIrpXTfd8dcH67mRyIxX78RRZ+oQuA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777217786; x=1777822586; 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=dYCgymqR+Dk5QemT6yJKsoQE60vlMTeWeMviBjvog6pAIE0NDY+PmToAQ//ReE8gNm WMIzCuJsTDGu3L7V3UUMe9LmPBPsvW/+Ey4+BAQOt0GbkYnNyFvfEOmwFSqFJEab9+0b ezAT9U4vcLJeUnjaWMXMsgX8jbIz4f3KlBUElqj4cYI2AxE4u7htE8nZ5zNKDkbXjGf2 Y1ojl0yRbXeaCgYNJIq3IsWRVNbWiu/3HZDbo33+gF2ErShKNEm/bAaWiCgEptWPXa0c BdzMKMnBYVRA/LDaYrah13ZUVpDmW1yXDJRpOgbd4fmZd2+coiiJTi89olHaIjCup8DO oJCQ== X-Forwarded-Encrypted: i=2; AFNElJ8SMXdSQO5NPcIBalR0MtOQ6FGgeYzmfzVmthpixn+5ikobCCfdT9SevphvuRE3L6taE0PoSUNETLftuJPN@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YzCexLb2QyIZDgFSTtpfrHU1YbTTL8LElan4zO+eBxuAscYj5g3 VW3urzX8ASnMNVAKnH0crqsEQspO2BJP0qiVlPYRlFSATjUFBtbE7t5b0G1mRLxQH+IbzA== X-Received: by 2002:a05:600c:1549:b0:48a:761:5808 with SMTP id 5b1f17b1804b1-48a07615c09mr372673905e9.0.1777217786284; Sun, 26 Apr 2026 08:36:26 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiIuniTScHrtFnYLwgXAw/bBMA6RqY5H7IzWAl6BlhWzzA==" Received: by 2002:a05:600c:3393:b0:488:9664:8b9e with SMTP id 5b1f17b1804b1-488f4d76891ls64857565e9.1.-pod-prod-02-eu; Sun, 26 Apr 2026 08:36:24 -0700 (PDT) X-Received: by 2002:a05:600c:888b:b0:480:1d0b:2d32 with SMTP id 5b1f17b1804b1-488fb74bccbmr464541655e9.12.1777217784476; Sun, 26 Apr 2026 08:36:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777217784; cv=none; d=google.com; s=arc-20240605; b=fb9AC5JDoli0GsT3+8syjhmvxdRxcfpfpp6iJGilhSY7nUM86XAefe2dqkUFA+y3Vx wUieZ/IEkKsUB9/py1d1uY7+Z2mEDZMYikIWBrha3hliVKQ6oij00NhTlwsxs4LMEhTN SBBkp2qRzcJi3gAHCMeMKA57nwpSgMVKMNwJ5DAXbWplwWWVO1bM4WWLePzdJarw0F2P oKgKIf+oRABMHQa15V9S3mPNBTK8+DCu8Rz4T14SgOQh0ul6kW1F/sYQZvwzek5l4Qwu cN1Nu5MBooH/1Q3e2N6ZoUTduXodEdKPu0oQsFnKp71YETbhTE+e9urahtOSLqBmyItG w7oQ== 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=QEiKkYWkRiTJ1DfE7JteN/L7faIWBKmZRL9o+ErV4VTOKi3UUgSCGzmmsyqpBsiVyw dI4j2K8aul2T2hVxXMI54OmApdHLRC2Gb5XlvbhaD7kfUmbpvqgpAV9NrsLLuZf/juh2 csaeVwie+jzOolgLi+3zJWYKaeIuQP+Pea2XPUb4wtcIbbFSxBXRc9kgTNbsBpVqr7lo LLhoom2+LZIYgzeFBcFSvCUVBMcA74JyHF/jqLuf9Tq5EKyDoCxWepy/YwH6woza2DBT N8abodZ6XECj6lsbXNDaK9Wmv/hhdrU41AR3Guj8aOupuzBNZwfFolkoqcAmxu7eY+yv AdNw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=OJsNLVF0; 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 ffacd0b85a97d-43fe4e10e17sor3302185f8f.12.2026.04.26.08.36.24 for (Google Transport Security); Sun, 26 Apr 2026 08:36:24 -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: AeBDieuMDm8JcASv1ZPC4x63SYWR70MKV73xUPxHlLbVFCvKtNt187r4JGOoqfVywUg nXuccFOEIgHrgOzs4ztk/qFEQ8sjxF8wJvBRcFsLKan6+QkfxwdCgskH0kqI9UGgwIhqJ+f5RcD jcEm8ar3GhoDw9Vp1KdpdngSOFPNVUXP5AOL99NKhyype3X1Wapwwt2qcmg3nT3juYdw0J0Ct+8 pYAzRcG2Z+n/jcrQsfe+I+174dpk6veUQ/koPavgUN/Z4zLQxNyizZPdcM0JLkVeczK6LDcIi94 Qi02386faj5KQBgfkTxeZqcLVoul/O6va4yKGJqnKXCZ8lEWMTVoyRWjPAtmw+zxDS+Irr0pCge dHv2nhJD3qZp9mhQJy1Z9SNbXLKzvAV8kyKPqd/ub+Akbn1BG/dD5UuZbvA1cgb7S6SEnAcP26t 5IJmgu1v0lxL32vRPKd4xF9NbcdwDSdUwQnLQIF8t24mUKxXr+ltBaRtcRyBgFDEsKLWSlZj02u w7jAINqfEAyAmXAjOvQ26mWV5dggRjXjakbW6HliV33JHLWx1SV8ej5JXMvBy8MJMIKds98Jnj7 qu40eyyFDaqs/GlCIFW+f/nKcI0Huw== X-Received: by 2002:a05:600c:a305:b0:48a:53cb:85f4 with SMTP id 5b1f17b1804b1-48a53cb8734mr287837415e9.24.1777217783633; Sun, 26 Apr 2026 08:36:23 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com (host-82-56-22-134.retail.telecomitalia.it. [82.56.22.134]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48a5499b0edsm388438845e9.14.2026.04.26.08.36.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 08:36:23 -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 v5 2/8] test: dm: part: add test for part_get_info_by_uuid Date: Sun, 26 Apr 2026 17:35:27 +0200 Message-ID: <20260426153617.2039651-3-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260426153617.2039651-1-dario.binacchi@amarulasolutions.com> References: <20260426153617.2039651-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=OJsNLVF0; 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 26 15:35: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: 4557 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 1D43E3F206 for ; Sun, 26 Apr 2026 17:36:28 +0200 (CEST) Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-4411a2ff53asf3924391f8f.0 for ; Sun, 26 Apr 2026 08:36:28 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1777217787; cv=pass; d=google.com; s=arc-20240605; b=R8G/MW6J7fDGLxjzrvpcgWcPZ8s/bBQo0APlGuKmySHKC6SwslTbd7ELeGz4ZQbrdd JUzJYt9xpDwRw1DtmVIWB3oSX91BbbLuS5IcnKjd7PCApnOiI7060g9lDUyL5Pl2aQg+ aoATGYY7PPd/N3HGwpQs6xsQ+I6JgYwLCMiGXUskMORogzIKHlaihO1yFvIeEJ0xYZtS Wvd9T3pW9I7o1Ay+Lk0mLmO5NXyF4zNoSJHWqS5qVYHhv3h4eEq/jj0sMhG72Tvn57wH kpUalLwfK7ilJWHfgchfjnfJEyStYOqkzCdrcHrEyjAeEVIsfBmwlCJUt0c1vhkHYoXA R73g== 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=qqcdAybkku/fiEo11KS+/JqrNUox3jBNHUoPZw15yBU=; fh=c/TgUFHubhFO2OTocktGbmzl6n6C3CzGCgJ67CXtVwM=; b=HVk7zRrKP09dcBLTJTIrZ4pdObOqBuDOXubaughKeGsetAP247gbBOdKoqzv1kADL+ lr36kQi9a4SPpi5JTZl+73IHSUHOx5yylGjAuKbAJN7For/Hqa/7Tfr/W29uvcmkXKXa 3bMvzObkJuUM8BLHIuFMBGdow4oiLRi1VQ9mPBXPpM07Ykpk1epJzk+AyDVjJOEMJslk hZINOXXJ/8pAgQ4ZICqJurZ/fkwNC93QHS4kxF1ZtQt23/q8Ge9fBqrovSI6U5NcKRJm y1NYEB3QIdXzAaye3C7tFw4kO6i//rpKusZw3JMQCgMyexih1drEVo8Inxo3r3A6B3Q2 DoJQ==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=h8wjALpR; 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=1777217787; x=1777822587; 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=qqcdAybkku/fiEo11KS+/JqrNUox3jBNHUoPZw15yBU=; b=pPbLg9n62310mWPrnH2iAP4wLAURf9zw0H1Kmiby/Vo1/iFRCswV8/h8Iy7vTf5JgM mNlggx1YPS89chmw9lS+/WfPfzN6ijZjF4cRRVUdR3SHzAP/u4k5ICJc+fuPPKs5ugpm 7dIHbmFJ7scTdX6N2BuGBv8quXhwkmwQGg0l0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777217787; x=1777822587; 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=qqcdAybkku/fiEo11KS+/JqrNUox3jBNHUoPZw15yBU=; b=X/q1oik+shqM5k+uVaL1FRdwlshJqH+g8JMIoi8d26RosFfsbGOmoahoK1ew35+5i5 ICjjdetKnKmfcPOWjEU9qOTud3evWhsvFsqRdzXrAzGZArFOi3Gdx7/foQ4usmfXhbGz qrctYUhyq66edL0m8zXlWNJANeoU1X4ZPxL+UKmJ+fEhbf/FSN6eCBhk0pEgDp91Hyut gs+J4Cragn9eV4KQrq9uDBXCcF3cOTzZhXZTIRzr12PyaS8wvzEMRuwOYZBDggsQauZc z3uAaeheZ9uYeQpKIUcUsmWAL0E6eGKG6TaScigIKdJiyTb+0vpL71GIDpUtviiEliqv 4T1Q== X-Forwarded-Encrypted: i=2; AFNElJ+/9Q2XRDgtb9fowyBG13Zowws4iFpa5haqlasv1d2o7TXu1QsI7zJgtJsB4KkmkpDA/WuOKj0qSLCTVFoR@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0Yzw5YlGI1RjMmdKb6JsLsCUxLgrjz/OMTfhVyT3BuXdP1EQNz4P r9iWHc+hlXCw6RsmN+cfEhXzim0YdfISk3dL+GRd+Rv+Dgg0aOIYNRXrcIFMLGktXRvE7A== X-Received: by 2002:a05:600c:5285:b0:48a:5333:811e with SMTP id 5b1f17b1804b1-48a53338269mr410005595e9.15.1777217787666; Sun, 26 Apr 2026 08:36:27 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiKUIhauuyKtB1GLmhXQD39S4tdmG/zp+NA1z8n6K9HAzw==" Received: by 2002:a05:600c:8709:b0:489:b99:ef73 with SMTP id 5b1f17b1804b1-4890b99f58als59471395e9.2.-pod-prod-06-eu; Sun, 26 Apr 2026 08:36:26 -0700 (PDT) X-Received: by 2002:a05:600c:450c:b0:487:55c:e0c1 with SMTP id 5b1f17b1804b1-488fb768816mr548772865e9.14.1777217785916; Sun, 26 Apr 2026 08:36:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777217785; cv=none; d=google.com; s=arc-20240605; b=dfouV2dj3hzZFHiux1d6bwhDRq91bIvFXLTzUkc2lzEDw1h9RIC5Lkf0AO3Ve/tP3c pGzA1d0LypWM3MejNlqpsMZ6kRnTYkYh+40eJImgZQWwRMt58QNLwRNkDVTEhdkGj7wU q45md3UFqvUSerZYj3jXKnvDImLGmfGyyz7dR93czh1LhOB7me/ly0PXZqlsO+NO7gO5 IW7QT9bCmNTt3694ldc4zQV/LTyY5PnkuxBmNgtSSzV0zmXVQl3uEJOvryho0aREMatz BHXjt9NEiFdk5wGd08jxQJGjtPLp80CakY2okr25WIP849dm0/YBfTuBS0I22V9QnxNa 6INg== 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=hw9GLngKjgFma/Ds2VDGbYsokmFxr4udRFfMO00ab54=; fh=VgQKVAc0Nv2wqUPs94hP0fi+AHJNnKkvRXUifxqpq8I=; b=Yc1TCi5qzGY8uMCqO0e5y/f0plJnXYa1+ezlS74nJsQIdoqHyiYf+eu3klT6bTpqwM n4mMCBh0ESoI2zU7BYZJrObfnK+bIRu3GMYtTKwvBJc7H4/jwB25kzkw8gzOK9eDD+ey bRYi/qBq7QDkOXhr971cpRAxJaYEOoZxac7Myk5ZUbho0a8+XVo92m0GgsoOaYfoTItg KUMhs8EF4P0/QN+ehWVyqJuq5Qhc8sfyDMHVbjvxZPiMiqUlFRXNDOk7UiRfMi0pDuWB jpIehkR0vH3DfBenxKYW4lIcTY1M7IRmv+KA0yyH4Tv9sfQiKr52u8aK/exoABUdHWLl 5crw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=h8wjALpR; 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-488fc142810sor36988355e9.15.2026.04.26.08.36.25 for (Google Transport Security); Sun, 26 Apr 2026 08:36:25 -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: AeBDiev1NyQLWZ8fiq5yotD4w9AO2NJN5g2qXvHVMUs4komVE6Z2hfNdcP5du0Sfj2j 7nfEjVyg76mYNpcBoGqWVK2fDRZhvVZNUezG7YF9GnVkbGdxVPWz9rAt2nMlc+MxA0HaMaD7WWw E1VwQCKGWDcdu7cuoexW1gJavi2BKNAhimzvy+JdVxOndvF3PeTPHGo2CnouGmIFS1ZQ0zYcepJ AiDi/FymRIwmAQOuooC9B67dPFHF0QBtjCbT1lHXEVk8uL0x4V9xLtLXMYu3lAfQ3uJmF4y+QQm XdrOAza3ZUazkJravYLA5Uou1F9BeJipOtIxtVU6/GHRbGdRqxbW2ggzhJQ4yLWzP1fls1TR/l5 fmvtd5b2kBi+K5C1NhGbZszMz2aG9SdYQHmhSTw3hsuo+qwLD67EeFqjzfrSHWQ2AlIOjDbqtVZ q2L9OTWJObbT8fxmcTZ1sq61eugN7bQ88FrlDpcMROqMknakmS69P0K2ZScKOkBtuRB5OWxCyzx G/ckLDVW1XDhWsEZt5wksLlukSVC/uBddM8zjPsxk0bSKWPedVPNNuXn497qCliVfDBt810dqDI SnsDK/Kpkm+XYa5mBtGNnG8jMGK0lw== X-Received: by 2002:a05:600c:4707:b0:488:bfc3:efc with SMTP id 5b1f17b1804b1-488fb6e8eb5mr550713775e9.0.1777217785396; Sun, 26 Apr 2026 08:36:25 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com (host-82-56-22-134.retail.telecomitalia.it. [82.56.22.134]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48a5499b0edsm388438845e9.14.2026.04.26.08.36.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 08:36:24 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Dinesh Maniyam , Heinrich Schuchardt , Marek Vasut , Mattijs Korpershoek , Simon Glass , Tom Rini Subject: [PATCH v5 3/8] test: cmd: add unit tests for part command Date: Sun, 26 Apr 2026 17:35:28 +0200 Message-ID: <20260426153617.2039651-4-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260426153617.2039651-1-dario.binacchi@amarulasolutions.com> References: <20260426153617.2039651-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=h8wjALpR; 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 --- (no changes since v4) 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 26 15:35: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: 4558 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 D6C7C3F206 for ; Sun, 26 Apr 2026 17:36:29 +0200 (CEST) Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-48a5fb71a84sf20646065e9.1 for ; Sun, 26 Apr 2026 08:36:29 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1777217789; cv=pass; d=google.com; s=arc-20240605; b=YhcQfFLrIz5jBBn+sSAgfLC1oj/odY2bc3RMWdtenLWvtqu3VDBqVEBClco59r0f3i hn9tynQyUKS/jH0+NS/mt1M72bQGQT/Aw0VOYic1BJcztu4XoD7IrTdltWqImS2hnFsU qkbZaz7OEx+L58fbIuNWo6kfyvQM8QpJ7UX9qyspMiA2JLXf6H78p26hN196BHtqskuF 7l1vs4wSIEGIzKqUtzd2Db/j1kFXeNiTG40gGFr9rtu/6iDxKF6hM4xjDnHV0yRnZNNG BedNuwIvmqdl7+yvnM/TTBAHQ/unfOy4dGd8fLgvzAdgMNN/sMluUQAOlTY8EYzSP32H OTlQ== 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=K855vdwvBLJUQJTqsDo0oAPRqQMZ9CVWL+0bVAKpXuk=; fh=UjpOiVI6RI/5bKDHNWPszDfg1mFu2nYAff2jG3nhsuA=; b=OCKXWjWbDt2pVvdthjeiT8NysIALDWm3R58XMHdEWNls3GwnQMVqxl4M5qGPQKLWAN r19fbkjYT4CikswzHwG0PGxR6sx+hJtv+v43JUPfgeBjNy1SfpCvhwGFpBOFArtj30V/ LdEOwktPW6lPm5aaZElpck+EjPWf3Sp0DoJdolxY2Ax1YU5zN/IrN+ajObtUt5yOzKhA jkL7w8A5xeHElelEG3pSRa78Q/L4d41GelnPhSRAuLvo/3Sy53/bEqVu81/dNDQUkt/7 FI/Eth6ff6Yw3klfbBK/cnGXGv2mIBzNKFHvi+dTOouws3degDhMBhAqY4Ap6qnp4mhL AHoA==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Aa0qP+h4; 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=1777217789; x=1777822589; 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=K855vdwvBLJUQJTqsDo0oAPRqQMZ9CVWL+0bVAKpXuk=; b=oLW379qk9n21fnoMEBv/q7a9NzkCZRDyZG/WTtnSB5bItDr8IB9KbwdQiv2/TwYmfU XWAmWLiKUVhkpfSpndgvP5xJWf/2hGI2+y1O+PhHmXD39YfSqSpww6Aer8MF70vXE4BZ +sVQLQrVol4lMGMNewK4D2Q7aXgh87/xlfo1M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777217789; x=1777822589; 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=K855vdwvBLJUQJTqsDo0oAPRqQMZ9CVWL+0bVAKpXuk=; b=CC93PrSKzrM9P96TtgDSJkARpo5+e1nWpKsBqkh9jEUa1uIE41ESdWQ77oEY3iMAhR tU9WH5BAMKSkMGXDsy0ORYd7yqIbydiwAyo9+wQvJebpp+fiXJ4DteVoqN/XALSh4ZSw 4ke6lK6DsxQmjM7LVEUT2kFdupoIz84aBXWhSxmqL4I/FBk7TM28he9wOT6aJUIU6ctW A+lexCBMXSNPo1BgLHkND4St+b9Z20DtP68AZs+eOhvZqfxJCj/Fk/sdMUMINLS6J8bO 0mnCgwTOCfDPGyXSklZsqhYUVaDeeK6YXYyCWQYROdqvEq0IF82fvac/SuqP9neIBIJb ZRNA== X-Forwarded-Encrypted: i=2; AFNElJ+dAVYLG8RZ75634XdRHh2iItzifT4JwVM5UDdWmh3/exGqEs32LU2JOr7IM9tuki33lWUTvk8fTI0ps9lh@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YziJgyX24yCRNwRryr9QQOWHoQS2+Y3sCxJ7iQxDQfpm6/+MRD6 JHQB+Gwfzytr63lJFSOl48ugNBD2tslV2xkaybpkbcjddMqPUQ0Yncf7avmz7m2BMYyRdmKleQJ HLw== X-Received: by 2002:a05:600c:3150:b0:485:3cef:d6ea with SMTP id 5b1f17b1804b1-488fb8b9debmr105203485e9.13.1777217789445; Sun, 26 Apr 2026 08:36:29 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiJHrq+eJu9J0tKl7LNQr210sV0YrVYc0ndBM2N/s3rAjA==" Received: by 2002:a05:600c:3f0d:b0:48a:5e52:aba4 with SMTP id 5b1f17b1804b1-48a5e52ae12ls17353675e9.2.-pod-prod-00-eu; Sun, 26 Apr 2026 08:36:28 -0700 (PDT) X-Received: by 2002:a05:600c:b96:b0:48a:5339:a46 with SMTP id 5b1f17b1804b1-48a53390f6cmr347938415e9.9.1777217787734; Sun, 26 Apr 2026 08:36:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777217787; cv=none; d=google.com; s=arc-20240605; b=kNAwzdizuTg4K1o+H7VOsxwPTGtMaiBN/CoohIo/R01Mqopm4vMuGTM8ClwkBs76xz cl7APvp8NPvfI0tfCTRskoC3ldbxcGFh1y5st46nQs2heuSDuWNk+ydEWiJ6s05H02vA /CLN4EYTXOiPcgnNnoykSwZoi9LaXgASLH1y5zjLzv+YTQQIo9bOHbs7qe09AR/l4F3R 4kXVicZHQ06QJKMr7WElW3gNjNlPwSmtG/4Hs+DwPlyAl/Umq4S6dH+y6s+E/vTLDXuf hnKjKA6l6QCAaUpFLQJwsIjI7lhOGH9r/dg0iZSVpD9jjVaDQp2OcLVzQUUiF/b9syeV peHA== 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=P1GVI373cyvvUNNV0++FED9gkmrJNOa3SBgfOLc2fAY=; fh=/Q9I6E+fkF6NOPQEns556/DWN091er+VFMWUljXVtro=; b=IqFMbk8xgc2Pgjh6ytsJryY415dYK4SBsFpDfBWHMcgI8gbqEAe10+zehtNIdZcyOi MltNSWPnQmo/pyq75uQlyhqRXAY5S9ba2aoXYgoMamJHAnEvVG1tx+9URPklulzcws1v FWcAA8py/yUc/efuc+5BdzpCJOsgqoVzJTzUfaItGf0xX0muBcIM6sgiM3xmcPpeVnpl KTkuHhVU+ZUjVYOaaUycmM977jVFv6w+Bwkte8MfzGuOqwfBFN5hC1usPMVHHmDmX2HR OD16gtWGdX35omUHOBLipaJx+dU/93kY/JqRwY3Dkn3Tx7rCcBfBcOnj+V8Wv/s4nkO2 8JMw==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=Aa0qP+h4; 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-488fc1aca6dsor49939515e9.4.2026.04.26.08.36.27 for (Google Transport Security); Sun, 26 Apr 2026 08:36:27 -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: AeBDiesuELMSg7E8F82LZjCizWTqFMbTkEmuoFH+0IUe0mtGMSQn1tyCVT7erUSVSyX BgrB8Vz+8qUmwcH8xCHx4h5rb5qf+9Q2D1dwC55uB4WH77/8StzJplzhozKFWJgExNL2xK2vBIy Vlfbof2y7Q8E53EQzDvqYC+cQmFTLjV1HNaOGSRVW7aZvEWqM96D7bFdu77Bv7dSggy8UP0zmqP 4xENWVGduuXb3y8/wl61GjctJ0l5lBV7m7CnMRP5nqMRWbFBHB2qzIG+J1REZYLTMGeCszQfT0R 5Y7EAmWO5lETMOqmGCtjWAlYTDMioiFXheGO3tjBhWILh/K2+UZcYC2coI7QjeUsYalP7NXnXIW mbRv0nXux+Eu/ASfDJQlIhD/FtCSTpBQ9rviqftcJjAiqHs3ndmhNY5Yo2m7DyjkRGkeo4NmBAQ rSxowDdenA0Hs8UVZcS9uziyxeDhz0EmYmgAs8Iiz/cogdJyAmjjv5MVXGQ46MxOTqPIZ/tSc5r mwbAz3qyPCB8EILqsL6r95T1intmbCtm7ZAIlHxjWYeEngxKcCsWfoz35WMAO0RXOd385VMwnF9 1hXEKqu28V1V1wj8hXLsbfDH2mythQ== X-Received: by 2002:a05:600c:a305:b0:48a:53cb:8604 with SMTP id 5b1f17b1804b1-48a53cb8949mr270477285e9.14.1777217787265; Sun, 26 Apr 2026 08:36:27 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com (host-82-56-22-134.retail.telecomitalia.it. [82.56.22.134]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48a5499b0edsm388438845e9.14.2026.04.26.08.36.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 08:36:26 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Simon Glass , John Toomey , Jonathan GUILLOT , Padmarao Begari , Quentin Schulz , Rasmus Villemoes , Tom Rini Subject: [PATCH v5 4/8] cmd: part: support lookup by UUID Date: Sun, 26 Apr 2026 17:35:29 +0200 Message-ID: <20260426153617.2039651-5-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260426153617.2039651-1-dario.binacchi@amarulasolutions.com> References: <20260426153617.2039651-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=Aa0qP+h4; 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 v5: - Update doc/usage/cmd/part.rst to reflect the changes related to the part command. 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 ++++++++---- doc/usage/cmd/part.rst | 6 +++--- 2 files changed, 11 insertions(+), 7 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" diff --git a/doc/usage/cmd/part.rst b/doc/usage/cmd/part.rst index b91f6541f7f8..a0e7be08a9ab 100644 --- a/doc/usage/cmd/part.rst +++ b/doc/usage/cmd/part.rst @@ -52,7 +52,7 @@ The 'part list' command prints or sets an environment variable to the list of pa an optional environment variable to store the list of partitions value into. The 'part start' command sets an environment variable to the start of the partition (in blocks), -part can be either partition number or partition name. +part can be either partition number, partition UUID or partition name. interface interface for accessing the block device (mmc, sata, scsi, usb, ....) @@ -64,7 +64,7 @@ part can be either partition number or partition name. a variable to store the current start of the partition value into. The 'part size' command sets an environment variable to the size of the partition (in blocks), -part can be either partition number or partition name. +part can be either partition number, partition UUID or partition name. interface interface for accessing the block device (mmc, sata, scsi, usb, ....) @@ -76,7 +76,7 @@ part can be either partition number or partition name. a variable to store the current size of the partition value into. The 'part number' command sets an environment variable to the partition number using the partition name, -part must be specified as partition name. +part must be specified as partition UUID or partition name. interface interface for accessing the block device (mmc, sata, scsi, usb, ....) From patchwork Sun Apr 26 15:35: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: 4559 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id 2C0903F206 for ; Sun, 26 Apr 2026 17:36:31 +0200 (CEST) Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-486fa07f2bbsf65954315e9.2 for ; Sun, 26 Apr 2026 08:36:31 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1777217791; cv=pass; d=google.com; s=arc-20240605; b=ggyr4yNq8gLL1yIn2Subx+El9Y9GJJ+zQwo9xbxGSzDOuGRWysjMP/FrprvC8u9Tuv OyCEpYqncP+9adCp6eYyUiN2jmCbELkkvPSaYk0S1P403TrBHn1UDAR5D0Ce240Ycn5L c5FBdgQ66bkf0c+L1V6qQjFT93cWNqR/YCv5xGs3eA5zC/gKJfs14hdih69QnmpaY7MT 76KfT+0duWKPGP/ePAexjvTYLOLGFoEOOdHu1Jm+y5NX+uSaUkBf3yRzU3V10wq6JjlS Fpfdvx6u9Kl8D5h5ex16M8HzdyPLgJde/o4U4o6vd5dnBpjqQHPteKxtbAHfu5x0jy0d 2mMQ== 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=+warraMIp/svLWqTZqRms0n1WbXRcGfFOgm8ZtedYkQ=; b=BWlD1KWfC6mNxT09JBa9SJL2Vq2vKlPXRKOwkuXzzizmqqPMyYpcPJMM3V740pGI04 n98Cct2AmhvyPzLwlMlQdXXjwAtJZJXARzRgirv2Y1ngcVY3yTmi1k/dk04ru2HJA+ox f8PZo1mTRmXh/T13irlM8ztGmd5S1C+kejxUtA7XQp58PGIPhad4QPoFHpEfvgcpaTM/ eH3+gpdlmzvYFJUxKKKrGkZR+qHJZU3f86ciwqNTm95868iXfHnQ7HiEm/bejwYQu3Gb Y8R1qPz/f0Bkz0xx+NO3JmPwF2e5yEaInkVIVOIaf66AOjYrRaCo3onRgfKepHp7cPqK gn4Q==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=FPIaKCdH; 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=1777217791; x=1777822591; 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=Xs9j22YX3CLA34MtNXbGUiprutD+5eqvF8KKkQKdyqKcc1ZMIdb//fRxemR4axNj81 9Zxr5op0MX9ODheM2UhnlWIRFY8dM1Y0InPNvsqv1BqrPWIz2zJseMddndpsU/9XGY9+ IN02OBTmixZXafdVBYVb2/amYaeme4gBDknNg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777217791; x=1777822591; 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=Z6NPp8wzwx6sFxrZnlm15Yp1XfEvvNDdaibFZc+JA+KNtU72HAIgmaH28y3HBxZy+c UlN+G7tWMJZzdlHstRR2Uc065HvmWLLNl4x5mvRJlQ79xhdCWxLWF9jXKz3puDafJSmK FfhJyv5nrwUeZkBO4Gmn27AwFoNwx2pRuGBzuvUTKjb136I4O8zrDn6D2+1tvR1YdDgI Eam0SY9Hm+F2KTrDHGVl88plOmSPaM7qqFI5ztDxQSjlEF+0JJpXYym4pLDSYswtQRQ6 jKxvBMMRGZyCUsUntsUqJ1FNigLhuhs7LqKhMjzrZKbTLI5z8U09HnanqdCC1qulTuTe HzGw== X-Forwarded-Encrypted: i=2; AFNElJ+HOk/oNQVql/anikwD5lQQSr7xa728lU4YZsBTWXNe0bcu6qDVobsQNiNTMZkUEzGIUQOAePGoDDusdr+H@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YzjHQXSnAYbOs3fmXkyaRWolXuigiRmz4+po6xCQ5Xl2FBA4Ym4 A9OLhJ889caHxFP++m2h8GT78zapz5RWxZ6LfX02kEuSIWMb9M8PW5nTKA8QYyhP5cvVzQ== X-Received: by 2002:a05:600c:5295:b0:486:fbd1:9dc0 with SMTP id 5b1f17b1804b1-488fb780463mr545546035e9.22.1777217790757; Sun, 26 Apr 2026 08:36:30 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiKR029jDa0Y2gwM67pnh9spPRqsiVsmDgy9jYBvN1DFgw==" Received: by 2002:a05:600c:310a:b0:489:1b02:7d07 with SMTP id 5b1f17b1804b1-4891b02977dls56549045e9.2.-pod-prod-04-eu; Sun, 26 Apr 2026 08:36:29 -0700 (PDT) X-Received: by 2002:a05:600c:5297:b0:485:9a50:3370 with SMTP id 5b1f17b1804b1-488fb74a431mr615875745e9.8.1777217788924; Sun, 26 Apr 2026 08:36:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777217788; cv=none; d=google.com; s=arc-20240605; b=KZjwGRKo9rPLwRxODL8Koz+x2YN+km8dZkYdpdjdi5mvyEwZtsyuCOC/6HjP3OrGw+ HDqBcFu8Hifpetlmss1k9ya/UXg30BddHH9cEymCww3K5y9XMn17M1ceXKYBhK4OJCAt QTYv2lBj4hwqCedJmdP2DW2ginGKaj4tV9NeAS/72iUyS/prKnK8es/i5INM59zWc/Rn jlLPYz0TxacIbWQuKSK2MlU/QD0GU1umRuPoi8tk1WcCYGyPjpbpahJwZGiNMhUkd0qJ I/+hruM+yVR83MCxw/UKhH8c1AcK6nYEJ0AibFu6xCQGmp5ePZkO20HRCvGhb6VEFelW 0MMw== 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=HgTVOvkPAvGb1c1ulw9+w25+jNqB5hNlakOgoXvkKvTksiXsjyKpV43V2qzIvSHU2r 5pxl0W/Pd6Pbgrp3prC+LrkDLuLj2GI8qG6E1gb84jIK8Xsla+nY3Pj5LYeynNigq6px zOU66XQfYyRT0/CXa56YLlHcv9tNlEPyipQmbLmN572uijUy4qfQ+8vdg+7XM1E5Hp/u JOgyTdNIqP4AGMVDgQ1znllRgDfmbf78i813mazeDRgA2El9jX/+0bgGYVnux0cvWjmm MngQNnSoboaFG13Fg1CE23C/71UFZfnXx26u8MOHOAMtKngHxeuv9QSnKzHu3Efv9vhC oZNQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=FPIaKCdH; 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-48a549db60csor27324075e9.13.2026.04.26.08.36.28 for (Google Transport Security); Sun, 26 Apr 2026 08:36:28 -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: AeBDievLstwF00lJMZz49NjmUx3J3xo9R8lG6+n6iUZ8tOjpfClmvacAoABNhwwOASZ sYVGbekX+lA1wlKPvUdLOTh/sPsb+nQAxYkbIk0uMtS8vh8YSw82TRguA3ZwgsOjdkTFlquVFaB zJtIJHN2YfH0N1xmnv7YnwTQa25BQNqnKTEKdwOxdqKwzmJrMPqwZJMoAk08BkeaPUjEiH8Bjw4 YAmtd6wSQ+Je1DjIK1IL1dG3zWOTWoiVTtvUpaTAostQ0RoYGbIrdXp4p/fw3Wh/+Ul0bL6qzxD qNnCWLKrDY0Eu9EPPiskRMuLBeXq9LNp6w67mbCQONwnompsBtGxcwp5zHqEnGTD6twU26hguMc WPqLqlwcYVtKTCzUGVTDXvFLIDSmFohEuV8vVrVK/FGLjf5/fWIbCNVkmonyLVU4+4bhkJ2HZrl RQop23hqhr9Gz+/2ZVuW9H1DYn6GLcrB5F7xxXJ9I/qMILYDZV0/THApgaV6sEMFUs+uSDvlkZT YakeEYuICJX4w+LCGQ4btC4XBi0KnTDnWHQdJ6iRNgWAx4R0+Vt8IhFk6wXzxSpjLVpz9fLYLvG cvG+UF2fVc08G8YbHJT3yXUgDBxezg== X-Received: by 2002:a05:600c:888b:b0:488:c80c:c236 with SMTP id 5b1f17b1804b1-488fb73d525mr476367145e9.5.1777217788500; Sun, 26 Apr 2026 08:36:28 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com (host-82-56-22-134.retail.telecomitalia.it. [82.56.22.134]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48a5499b0edsm388438845e9.14.2026.04.26.08.36.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 08:36:28 -0700 (PDT) From: Dario Binacchi To: u-boot@lists.denx.de Cc: linux-amarula@amarulasolutions.com, Dario Binacchi , Simon Glass , Tom Rini Subject: [PATCH v5 5/8] test: cmd: part: add UUID lookup tests Date: Sun, 26 Apr 2026 17:35:30 +0200 Message-ID: <20260426153617.2039651-6-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260426153617.2039651-1-dario.binacchi@amarulasolutions.com> References: <20260426153617.2039651-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=FPIaKCdH; 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 26 15:35: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: 4560 Return-Path: X-Original-To: linux-amarula@patchwork.amarulasolutions.com Delivered-To: linux-amarula@patchwork.amarulasolutions.com Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by ganimede.amarulasolutions.com (Postfix) with ESMTPS id F41DA3F206 for ; Sun, 26 Apr 2026 17:36:32 +0200 (CEST) Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-43fe791a398sf7292030f8f.0 for ; Sun, 26 Apr 2026 08:36:32 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1777217792; cv=pass; d=google.com; s=arc-20240605; b=W+ykkndfLM+BASjTQATIbLZlKb4EsFk0phguBm28Gi6QLVdD5/+RhWAsYSz+kXWcBP CSWauvF2haULdCuLuVdOcx5j33aGlIUCBYYJSMSQv3UL0NawLV0euGgfVgfy83x9rt6U J8wK/sk8llXTyiLEMm22yD0ttzKQGlRcvhrggKFaJRtroyaA8TAQADBDBEJxNdTFHDAb jKF0VSelEnKL362vdq9Ir8KjAUsyWQVl8CH3bCMEo2upOLgAOtNg3nPPIMxGX91e6lK3 JKuHfTarEK5xcuVSBV+kzUhrGUrtcxJG2egLNn4x2wpxzkmKyIz0F3uuuengUZ0YGLwT 5tUg== 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=mbs+oY9F4U9suQU5Yj2NYWQjULs3NL4eqMr6z4K9NVc=; fh=NUEIshl6XbUlcAnHrTE2blvgbWqV3/O4BjpFWM4pPr4=; b=MZ+I1ZRUJjcGKi0bnjY4IEA+NK3mb/5mUU2NLWvno1++WSV+2jKL0/8mNVxStLwCCq NBS91KP7zCGehvUTDCBT4xpCnXTA2vcYMkozx64EoS97bmFB9tdByVHGjUPIGseFbtW1 VoVA4X14CPr1PH/9kzatK2KkkyAlh7+mjVSYoia8E0YX1LnijP36QxUwtYsHub2dpHQX gY/dMjyp30ymYIMIjqUncgBYFU5aEK1npFJ2tIbYhzWiEf24NoL1yoNfdU/ammZ+yyar IEOXRD7asInTLhAvbdPBLC27H/srW97lgrpz4BWMQqvN4c10OU9FYBGp/mbVf64Ekrcb R7+w==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="ETn43/ZI"; 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=1777217792; x=1777822592; 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=mbs+oY9F4U9suQU5Yj2NYWQjULs3NL4eqMr6z4K9NVc=; b=XyiC62F6V0tpIlm4Kh4xTKVIl651yfuu4xQV0dBC4cGXX6I+4KSgOhtg9VMtctOHXI nuLmjmJ7SadfefEbAl4hpzw2qJHB++NtTkF7khyOKMlZ2rWhYewgJfw+sW94/1Uv0KwT VhbSDunn/Xh7yBfFsY0xvmzncDnG7bg3xX/VU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777217792; x=1777822592; 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=mbs+oY9F4U9suQU5Yj2NYWQjULs3NL4eqMr6z4K9NVc=; b=BX/ggttGdkbk1HsaX0xOaw8NIykx/KlnKRr7i6hEKMUvcrjxdaoKclWxl4Dye4G+bd W6j/bxHhZ3tazFGUOIvh0eHOUpfpk8mjeWxEKA8JO4Ug4iZeMVswfCdeg0gYc5otY9nx g4red0lQDiqMY6CB88Q48RJKkpRd0amZuBk0K5ou28pXQOEq9EGJ0hWQfdohXEZ0U0Sz q0eOwFglOB9gJtlggqJbuyPtjlXzfiX2R1riTBSDw2F2WyyRPXRb0CI93R+0TuOB/Qyn be9eiw45irKafLySpOTndch/iB/d3GbMpJ4m6EiSJnEj7qN+fG5x9YssEn7NhOh3hGlL SdWw== X-Forwarded-Encrypted: i=2; AFNElJ/mRavpU3Ia1AU6RZA5Pj0A904JXTuXxGgb9XefMUFtV5P3lU1Rt7SVkpAeM8eZ8EYNzDc1mzPOGsfFhl3a@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0Yw0J1pn0gznwX1DSvz0w+xJAgXQF9S4rwLu2xU21n/0//5T9eLX 5LkYTMDGyqo1gnGA2C5NX6Rx+M3muBCc5+RZns0jCMqVEQmgHcdUu7f9hQgqixSEFmfbPg== X-Received: by 2002:a05:600c:8908:b0:48a:58e1:6d02 with SMTP id 5b1f17b1804b1-48a58e16eb2mr230250475e9.19.1777217792619; Sun, 26 Apr 2026 08:36:32 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiJRC4rjxbkfd3sluXJexgX11Xmgw6hBvVXHnH8jgYzKXw==" Received: by 2002:a05:600c:a404:b0:485:2e9c:9e81 with SMTP id 5b1f17b1804b1-488f4b0f219ls64514735e9.1.-pod-prod-09-eu; Sun, 26 Apr 2026 08:36:31 -0700 (PDT) X-Received: by 2002:a05:600c:a105:b0:485:3a03:ceca with SMTP id 5b1f17b1804b1-488fb7826femr396488045e9.23.1777217790967; Sun, 26 Apr 2026 08:36:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777217790; cv=none; d=google.com; s=arc-20240605; b=MlorU9yAnnCyF+WORXVhIkVUvX3uDfALkQj+noQXlWEf+VkjzlzfuKnmF0mqi47oQY Vy8EPQZ/WqkvbLtfiV6JFq5RyPeW3ol9+QhLDJWjw2LfPPZY8G9kv81mXlWTPBHsy0ry 92huZePHGZKg/B87bV1j5fDchlMHw/YBTp0+lBhMKm6SEBSK5nwJnxdIblDRi//s2bng nAda/lGHrv240inJ1AQsHweDIHn6ahhCmnST0f4V/eGpApOSlc3oLlJzmeKeohWgGe/q SJBazMcSrDEED1EgWPSYzRXnk8GHoPC0vjGNtyT7r8v9PuBhOlJYB+dj6/mdtqg2zYE7 c1vg== 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=06sczhgbtWdNK8ERusWYcOlhVyUuYZr9/KPOpcPmhKw=; fh=63tQyC28C9/eYaWpq6aXRoXJf0iCc3tAFavW3mffgU0=; b=QzeJuTg7ZSLBuJ5BQFmqx+ITvQ/F+Mh66oQRPLAPN/hRhEqdT7hOfQWrDVWC5rDA3D TjYfFTk9+qKwEyBfpTOuD01/D1sbfrWEA6bPZsrERLT7s0yjaZw50V4BVcyS4VATtSbP t70RBOkiRmDVjf61Gv6a3rZnZrimIxIOhGSLAMd//Mr12jnW6Z6mfQquTDfEjxQdpQFC iuOyLYjQ31YnISFMDAYQ8tU/QFFjj3xL8+dT8iyyh+0qQic1gmVTi7UjwYsy/vcAoue3 frTNB6B88Uz54bSZ6B65M9x1W3aqqMfg4d7e3Utg6HVLC1GNXey6PTTV7QPSMVGajtjg IJGA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="ETn43/ZI"; 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-489d07644e8sor32553445e9.15.2026.04.26.08.36.30 for (Google Transport Security); Sun, 26 Apr 2026 08:36:30 -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: AeBDieseGGGvV+nw7KVoDhTW7vuaa7P6iUiSQ9UPYsf3tqDq3DWnDiANWWLBRF+8VBy 5uTtkyirchDU8BgkomvzW2nKZjjx7HAZNS/4/RflN6oUhvhSAApdploDVHTVb98xlmSbOqbiY9M 5+hYx5UEQLdKqxF0Ewds1HOW7OBJr+y9iGGYyk2ybYrxcmP5nK5XSTrOPKw3wQW6zHsXTATuJiL No4xRsAWgcmRAe96QCwrMNOuzwMUJEVSpMw8LSTnqZGyXXNREOJkycvb4ok0Gqm8YZ+9y3dhgxC MA1MQUSkupvNeHhljupkCr1rO5GYVgbAd1qoxOFjCpQBokxTTj8Y29PK2SKeZvpJLum71cgdVyk udqT6rggzZuW2ETvsyO3eFhcrIUYO7W3N2tSJRaaAUgcadgfAtva8lC5bpIrA6MAX7U+7GFEYb4 UT8mpdjVG0LfNgQAlMtrwoSZAvePGolME3l4hZddS7neEq9B5XV1OSIH7YdaPJgiTKFhzWlXB4w 3bvjOzyxCY8HB3AEkFE+mRUm+qZDydfNetkyri+JmKO0RJZlK1Vggii0BlDUcrll6DRNrIRHGuY IxHI/LGmHdVC4Yv7zO0g5t+1bGuP3A== X-Received: by 2002:a05:600c:64c7:b0:488:a2ac:a334 with SMTP id 5b1f17b1804b1-488fb73aa3bmr573546275e9.3.1777217790527; Sun, 26 Apr 2026 08:36:30 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com (host-82-56-22-134.retail.telecomitalia.it. [82.56.22.134]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48a5499b0edsm388438845e9.14.2026.04.26.08.36.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 08:36:29 -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 v5 6/8] fwu: add helper to get image GUID by type and bank index Date: Sun, 26 Apr 2026 17:35:31 +0200 Message-ID: <20260426153617.2039651-7-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260426153617.2039651-1-dario.binacchi@amarulasolutions.com> References: <20260426153617.2039651-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="ETn43/ZI"; 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 Acked-by: Ilias Apalodimas --- Changes in v5: - Add Acked-by of Ilias Apalodimas (added to v3) 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 26 15:35: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: 4561 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 61F063F206 for ; Sun, 26 Apr 2026 17:36:34 +0200 (CEST) Received: by mail-wm1-f71.google.com with SMTP id 5b1f17b1804b1-48919890a95sf52115195e9.2 for ; Sun, 26 Apr 2026 08:36:34 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1777217794; cv=pass; d=google.com; s=arc-20240605; b=IXLUgm5e9+qvkfAF522n04qbdG2AxNbKQXya2XiSP8I+ubfsgs+UFm/ESVPt/638w7 8ALTadfnQ74QuRzYC8k+Xhk8RMtWPyRr36tRM8feQOtP5bT6c0Pg3stUpoIw3f4Nn8tm njkwPA8jR1ATqLOPioR2qX9Othq81t4DllQk1lYaDQS2w0CHnre0M6+0uVTT1uXaFgOw EtkpODIJjRj88l07jcqu7E+XuSEO2LOgfHLKWd0DGD3FgvJ70pFZJEyfgIZ4vk9cMqJH 8KhbiI8b4KbFMSdbnAhPWvPEM4PTI3J4WTjaEre7jlsixdMdGNoOefmppe9x6elhTh8d PjvQ== 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=oU4+BvMm2D3A085QUbEZWV+n3ZKVTm+J2BmlOhk/3mw=; b=HyRNTmrHjX6kuBsDjoZrk8On0JdimuifYnRIEKGmXcnnzGForuNi2iUY2pJ+2fM9DF gVrtj+xf1g20Zt/5rLd1SohiDqSCq/9Jz3tF71PVWNARCwLAvGvDq1fxdTO5X8xb6zrU EaJznkVQev1S1RqUj3iSHamtxuiW36Im83PQq4Fxy1cgIRHRziQololDSlVmndRVLI9E qyibSPqdImgtCl6KhzGr9rNJibMojKdtL16Y0L9SZw2XCQ7a1GGi5WHJI6LCk0V467qs hovHKSJdd51ielvdQ7SSm4AkQ8Zgf6NyjueOVsWC4yna3DEHSMkEJe8Fy7iARpClKCz7 qMJA==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=e39hwAW8; 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=1777217794; x=1777822594; 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=n8RmVvwYmSbPj1KU3hUTuRGCV2dnrXxWwDNd/VwWapwKMwRFQm4PpQQRCa8a1GD70h aAI+jgHSH0tHPq+Qqb2QpG1JLlnGXvBi8AukhLBm8iKhMDRbWEtm4fWwQRVJfKx8FP40 dBqVRMKNjBXQ5XEuhRvWNWmYtLpRpNRLr8laA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777217794; x=1777822594; 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=h4DBKFJwWSM54rcf/ZxyM3vIvfWbLGhJFtUvLlJExYNdySKIWwDVhwyTE90iXXlQZI NEcAhKPz3A+UpDH3XOvY+ncMg9HfXfi1urNZoSHzYMAWjZj1Hh1Qn7M1F35z0zIN7CmO WLgqUlA0WX02giUmVABrdSlmPrdd2DRKY818IoH/Fnf7t45drzCU/Ki+Y+4mpCvQrQW+ tZtXtY9n+V7pQabtqsov2PdWgLrnjdlSwwIGaHW8QXn5Ial+GZyDN2jHIawVEcVyyAdv J2rnTKazu46V8FPMprAS/n7KyA1tcKsAzO6XcztaNnN85Yjp7wGI6c0fInBuIe3Hi2gi ydfg== X-Forwarded-Encrypted: i=2; AFNElJ9jGjX78gsgWSI8nsCXfcxjZJvcSFQj+Nn+HqH4NY/hUiGlR8CGxLoH71PF57PPeMafmByfM4V17HWQlc/9@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0YzmW9b1FfvLjSsOxI8GTjY/7UTDB3Uo5D/f6NTmLb4AbI4VcMmf x9vAYCM6yB+O4lcePbwjIC/xfZc8ZR47p38iyUDISe4ucQW/BRhbo8FzQTDaGK56nQxmgbfwNUU Krw== X-Received: by 2002:a05:600c:4fd1:b0:488:78f2:6b0 with SMTP id 5b1f17b1804b1-488fb78ede0mr561766325e9.29.1777217793945; Sun, 26 Apr 2026 08:36:33 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiKXPqwA/U4ITydgT+6dkcR6y6GaT9z75xhNsY2SoOhePg==" Received: by 2002:a05:600c:3b9d:b0:489:1ff7:1185 with SMTP id 5b1f17b1804b1-48a671e8a6cls18205785e9.0.-pod-prod-09-eu; Sun, 26 Apr 2026 08:36:32 -0700 (PDT) X-Received: by 2002:a05:600c:a416:b0:488:90ac:8f71 with SMTP id 5b1f17b1804b1-488fb73a9fcmr457538645e9.5.1777217792192; Sun, 26 Apr 2026 08:36:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777217792; cv=none; d=google.com; s=arc-20240605; b=Tc+OmaHBdWIM7K49U3QXxHNMlyfPn4ayXqs8rWYC23Q7+/cKS7UkXF61pwPxgsRynu JcrZkrpMgkGNP2r/Qh+fyIw5u5S9WvAHoK7ZS0JVpvbzU4JxRi/MdnSkUQT7skX7pAId UmLpS34QI7DaKpDuatUCgfHfQ7rCFGyZU67TTqiLo3c5StYoHPYnbZcv6HEDUGxkwKHW JH7+MCvd0FX77K/pkbtshCqjYyuvW+MnZxPGkp6FBlL0qaENGm+OutlpvLmxbwruQSTs xw9Gq0chRfUrjEINXu6VbR7pPgPm3cesADlhCAqqXJZJ2eViI8qcu4vEEZVxsLNRb0OI ldmg== 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=BWqZzgk9bBPV5/SMdQ25E3N015T8OpGwxUwCrkdtu9HTe93WPZzR94G/hpKhvUW4Z3 RXFaV4QVlui81ajMq/UBJJfDIhG48nQQSNBn7YZoL3OBkAd5BRSCm9iH9fVSaZWqveRJ 641i3rjFZ8guJBSb8a2nm7RwrNrsgMyyw+7LISb0gLzjSmNngdx+JM6w04vJS3MNlwzJ 4m4Tj+k6FDZ1O4b3RIgSWfNbwbso1y8HwrLxZkz6EDt11QvdugtgXQD6nlja7S8ZwCg4 vSd/42oHY+8gkJKGA+XuBX4SzVAO0AoyPIzc/JFdbivDJCQxd5lRhllwKMHutAo1i1ln Bkgg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=e39hwAW8; 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-488fc0fdeb4sor52393345e9.4.2026.04.26.08.36.32 for (Google Transport Security); Sun, 26 Apr 2026 08:36:32 -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: AeBDies5uBioYxrGU1MrqbLs72JSeQlJB+R7cWE2+6Cewam04Klp2xhlrciCb8LM2kI 5ii1B31l9bnkzGfXP4fUV8vyrImjsiZTyc1yd2G5P9rvE47WRvVN4Iy8+x2CgZoXlin8yCP4vUg 3vTWoV3YXpkAsKHXLLnnFJ6k4h2eX7qseBqKsh+d+aYczoPna0Yky32JHmJLHTw4W385MnuvM5A DZo7jAbpBcaBf2UTcoZfi0gmtqnk3KGrRWir+rUbzLXzL0JXPPJh2UbAaDzKgfP0u6qx7sgRz4z deamwITE82GCkxb2MxP6pwm6jTm2ucTWFNMEB7mcJF8E/XRM7UHn08W9RCdf7fS9nA9r7AkBTcC FPAlzyUuChEW22ogdrtoIvK7dNmQ+eIH5R8nidNAxi0HkR/oEGeM/oFVCMbW7S/ixDtrzlS0dG0 T8dbEBy8iIWjVjBiZy9Xqa8uGARBN1VBgYafE3QM/z3RCYSiC9Luzo5dmvnT80yJeg2H3BZAbpM m5DeW5nMYMWHewvWXXSXelqdoIE6Ekp55JLLNRsHTEmX3qaVWgpmdNYu7pRb4Jxz+76gvaDeU5f pOvWN6FABR3PbF6dsRYVXifAVKRhMQ== X-Received: by 2002:a05:600c:350e:b0:488:b811:51c4 with SMTP id 5b1f17b1804b1-488fb788231mr613506515e9.25.1777217791794; Sun, 26 Apr 2026 08:36:31 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com (host-82-56-22-134.retail.telecomitalia.it. [82.56.22.134]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48a5499b0edsm388438845e9.14.2026.04.26.08.36.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 08:36:31 -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 v5 7/8] test: dm: fwu_mdata: add test for fwu_mdata_get_image_guid Date: Sun, 26 Apr 2026 17:35:32 +0200 Message-ID: <20260426153617.2039651-8-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260426153617.2039651-1-dario.binacchi@amarulasolutions.com> References: <20260426153617.2039651-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=e39hwAW8; 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 --- (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 26 15:35: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: 4562 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 C138E3F206 for ; Sun, 26 Apr 2026 17:36:35 +0200 (CEST) Received: by mail-wr1-f71.google.com with SMTP id ffacd0b85a97d-43d121c4271sf6437353f8f.3 for ; Sun, 26 Apr 2026 08:36:35 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1777217795; cv=pass; d=google.com; s=arc-20240605; b=KayKoi/AIbLWZtSnPrizx3q3T4e8HrJIKw1fobux79HtFPXLQ2u3Kx1J8a6tgL/UGZ BlSo0aiTGdtJ+Gp+356ZAh5FQ6lCW2biu55KmBliWqCy5+DhDYbwpIimFkiLzLyDSsj3 OEUAYQ6/vQf+KNmcUDF1NePQOaJNP69PNEHzNi4BXGo86ZLWR8WxCG/ved3OVl+Y++F8 yGXn8/gylH+KYrQJTXH0hiCFsf6ca/nUOl95LAj1RD6zPQDWxuVd+9n69CNUbChK6qdm 3G19vLTbdBVwNI21ba72iWXI0Nq8zX32L2nzy+UKY9EH1kihSlZs7xR95kFilUlNoc6r 0XOA== 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=o59OEOn2t4ehhCNQlftiItRTjhJ0LOzlCXk3u9o6w4c=; fh=42vZWFBFCUbTMvmYbMNQry8xpbAZpF8m+g9PJDN+V+k=; b=Uc9PKP9CeAbWFb3hv7p+ccj+6NdsKIpLZ+6tRiktvFkt3AaTda0h2h2iuRFj4aULTZ E32Q2MXiUnl3GZOhvwVk+n5cGDvii4v+1ILCvM/stJU/HWTL21MRZUbJAwjb9Rs6CQiN xeuUyKivs01mSvXOahvqVmgrQWeisbN+8URnGRyoi44GedE/ElfjlOnyhoBXpcP8BjO/ nU6r809w83q0klUO0QAPYK1aZZhpdXLu+mbp0DW16Rjchrf1g9nRa7Btml9YFAUMDtWx P9gP7KDIi/WFjSCIOAet0c5dTeqWQmomrGQLE6Bw7haBrA//WOFaKUP6TVh5lw0XtVkf Ff8A==; darn=patchwork.amarulasolutions.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="m/81Gnps"; 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=1777217795; x=1777822595; 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=o59OEOn2t4ehhCNQlftiItRTjhJ0LOzlCXk3u9o6w4c=; b=gtyQ1jCJOidDUKnbBjMMu/mX9t8E1M7Qs9GAfvQIWMCJXz+ATgv0PbWUIcvwWgvni1 d6NFvDDFVKyihP05DkEP7FWBXJpo+LuIpA6v3YZ0kpsqd28O6jbFJYju9XTeqaR8uDa2 16KKcQQJ+WESemnSloibiHRDHugQ2eOtOUQlk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777217795; x=1777822595; 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=o59OEOn2t4ehhCNQlftiItRTjhJ0LOzlCXk3u9o6w4c=; b=C0v6Ee0sT9IaTc7i+At1nQpyfRpyD4rqy5QG9cDuTbV5uQFHZvEGSo2S9H0WnjP6Lm EfIfP4bqZm7Aq+fEyG5DLHblguC6+A+pXOOjMBNCwoaFgVecByGfaxJH4VZewqLFFobF XEs24xjjtCWi3XK+3m3J4heaOJ1V4shvGRCbFzoJKa1QBUkLKkjyBEH7YEyJjUUFMzGM mi9PULn0RkWKJJUeca+4QbmmAxlZ2xkfUG9XNqbZ8s7mnB9yzcXTdzYwFUn7LDpcJ1jn 1enC6DmZViPbPC/V4HWmZ7oImKO570SsBPcSRAdT8csDqnXjz7/qAC84jl4t5CYrGJ0C bSaA== X-Forwarded-Encrypted: i=2; AFNElJ9te8XzhLo9djFIJLjDomu+98X5Rs36cNDbR38aKnAwzgQWL6Kc6V9MsCgrhq3gKOuyvTaIbgVUrbHIV9Ct@patchwork.amarulasolutions.com X-Gm-Message-State: AOJu0Yzh3rDkIZh9OEHH2FEdhp4/VPsUNmftVXXJOtMkw351SgA8Kxkm obTjgKbv15BXkYfE3igtYjK6Gp1Voa7TqoFQ2bEThOAUuC1G73ufBDO4OmQAe2bVFABU5g== X-Received: by 2002:a05:600c:348d:b0:48a:674d:e756 with SMTP id 5b1f17b1804b1-48a677401c7mr126524905e9.20.1777217795356; Sun, 26 Apr 2026 08:36:35 -0700 (PDT) X-BeenThere: linux-amarula@amarulasolutions.com; h="AYAyTiLqACfwVa424zN2GLoPaLr1TXLh6h+nokO8QZUm7U92ZA==" Received: by 2002:a05:600c:8b30:b0:488:88d2:f55 with SMTP id 5b1f17b1804b1-488f4b0cc6bls74731185e9.1.-pod-prod-06-eu; Sun, 26 Apr 2026 08:36:33 -0700 (PDT) X-Received: by 2002:a05:600c:33a6:b0:489:1c1f:35f9 with SMTP id 5b1f17b1804b1-4891c1f38b6mr252483155e9.9.1777217793652; Sun, 26 Apr 2026 08:36:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777217793; cv=none; d=google.com; s=arc-20240605; b=ZoH2DPbhTKk+M+NqV7W+C5nUbS+LIcy/jAb5uMlese6y4FX5aASf00+PYE4BVCYFol 5kzCYVBz6QGA5XPnA0b5i6/lVmPkqtSED6tfDir6SbqQo7Yin18iIRrvWiQ37xBwEULy Vv75frMTUjycRR1RpYGveVvqA7i26As0PvIqlWoPXRPC7hgxCrRyTLPSLvpaXGVbiwMU 5x8D1DpkoDGrZEcp88CZBQTLEm52s3L1boRY5/ws3TojKLKxDtqa4GkJvgg5RHtBnkIH VvgwKpy8gWGrwndWrsEiT9IATxESBS4SizwChACCp2qQhdZTmDGqAWekWcr3E6AlJsP1 GR9A== 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=VgDkinurEKkVfZgox9x4CaeLjLromr+fZYr6ImbNJmU=; fh=A7b4Lcg6d42EDiThJT5tK+BuJbQ+NoCE2BQ6B+bO/SE=; b=Jqwbscsb98zvFfBqokYvKEDGCn/RM02zFXZdLMqTmPRzaqPdLY9AoPkiEsOYMzFgrG clNgJ173RAHgVktbC1SukBZGBpp9fI3r+ri+oPtRwzS8UqivJ804glmPtUOCqJbYsvov g+iSk1ospCEp3DWyDtWcCM+MaFYgr6olWl4oLDJCrtGJHFJT5T/05IoM+zJjCoLd7UtR nJTBQikZfzWDw0r7lfW2XYLDyL39T7daPNJBNRiQ4/Zvsgax966t7qCWXHDKmBPvz5Yg kgTfEmbkE15mR0qygNn9kauVDIjFml2hMTHEAX2ak8tZqPCo/c9FyJH45nJ6PDN3PjtK A/cQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b="m/81Gnps"; 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 ffacd0b85a97d-43fe4e1a81bsor3894590f8f.14.2026.04.26.08.36.33 for (Google Transport Security); Sun, 26 Apr 2026 08:36:33 -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: AeBDietSdJikY/9AFegFJACgUwZv3MlImjCC7t6qLCYceFd3WYBBgOBCr3s7BciMXnJ IgdC4TbbCQ5yXC0c0SL9Gy/2/EYraeeblgjPVAADrdBFvKsHDr9uDepSIkj3wYrVIVWiUGdBgyE h0owxb4s2hl7YfHfnMl+catSdEgHSqpCEXdCaZ+Ca3C5h5G5/TZqBPyrusHCSUsyRczggyjWOvU WexICx2KUg3cwAH3sdW7nY9VANdM4H0JcqV1KOq5v0c4COdv0/ThJDC8DEmXDzrQlraGJhtshMs f+Ffvhw0MEZJ3rZ1d6kBQqQlXh404rMtAvNnsxUhrXvHtuFqgmWEJSyfGY0kE0R6LiIWVMN+Yyh z6GIXYe0sC4NfdsJYoyXnBopUfUG21rBGQyfJ0BCCPyWG0Nz9DG5PKPijUkDe0VGqz0itDUvxme XEQc6u1g7IKE8WIgxn56Kuj3c2FlnK1EIR62X5MvyDBmacxWJ6yKRyHNMCKXg1642bYxjDVH3I9 +/M81ikQBzoxegiRS5yeJn82htTzpaIbH0lIIFmvksoAjtJmMBtvViFs4z2KchVA/YoTNVmJvIk 5k0YmjUxkU/8Icl20vYHn3B6UVqT5ODkOpBPw2iz X-Received: by 2002:a05:600c:3ba0:b0:485:ae14:8191 with SMTP id 5b1f17b1804b1-488fb73a089mr611805405e9.5.1777217793195; Sun, 26 Apr 2026 08:36:33 -0700 (PDT) Received: from dario-ThinkPad-P14s-Gen-5.amarulasolutions.com (host-82-56-22-134.retail.telecomitalia.it. [82.56.22.134]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48a5499b0edsm388438845e9.14.2026.04.26.08.36.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 08:36:32 -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 v5 8/8] board: st: stm32mp25: support dynamic A/B bank bootup Date: Sun, 26 Apr 2026 17:35:33 +0200 Message-ID: <20260426153617.2039651-9-dario.binacchi@amarulasolutions.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260426153617.2039651-1-dario.binacchi@amarulasolutions.com> References: <20260426153617.2039651-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="m/81Gnps"; 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 v5: - Add Acked-by of Ilias Apalodimas to patch 6/8 "fwu: add helper to get image GUID by type and bank index" 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"