| Message ID | 20260429145136.618168-1-dario.binacchi@amarulasolutions.com |
|---|---|
| State | New |
| Headers |
Return-Path:
<linux-amarula+bncBCQ4XFG47UFRBFFWZDHQMGQEDRMTTVQ@amarulasolutions.com>
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 5BBF03F24C
for <linux-amarula@patchwork.amarulasolutions.com>;
Wed, 29 Apr 2026 16:52:05 +0200 (CEST)
Received: by mail-wr1-f72.google.com with SMTP id
ffacd0b85a97d-4411a36715dsf7911165f8f.2
for <linux-amarula@patchwork.amarulasolutions.com>;
Wed, 29 Apr 2026 07:52:05 -0700 (PDT)
ARC-Seal: i=2; a=rsa-sha256; t=1777474325; cv=pass;
d=google.com; s=arc-20240605;
b=ai1hHI4W1KWL4dHaF6gCEp4Fih3t+VsJe91tGQnI4ZOqU5lPJsXYpS/UqduK4rOIjl
CG2pafT8L9CkpIzEFDy2TXeXXk2DS6/eXZoBEUoUhjUSVjz/ZX9bAo6huvrCXNljLZtU
c+Uy7odkzrFFxwPuqxUTDbsn6B103USPJsDAhx3q+4rry+2CcB1saKAKUbC7jOmHjwyX
pWVh7Vufu/VsoXERvRENRlCY4zq9SvMDAiMoMa//17pZER5y79lchRg8qotZLmlCo+OY
oDQ46QVTCspF4XcP0PIUxEscBLLfU+yZcSgnYsnYytuSIIOCDSEp3WJDSaHLpitcF36H
SgEg==
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:message-id:date:subject:cc:to
:from:dkim-signature;
bh=HBGU5YUH0mSm8FRsHQNYhFG/LxUoxi6YzF83JRGSPXs=;
fh=LFCsm7jaHSqgzMKF3UIjPCCnHG0l2ONTMkMJ60I3mPc=;
b=c72miYc8t8AtYLQqhRkjb93Tz80FuPliPHzW/dZ0ITqMGNkGjHQFzpUJ8/cN26p0YS
4zFm/7kgjVBSxj+bI7uV+/YdG+4ZHYXbd4TtmRk8ICpKomD6ik1AtQ/OZjQOSd9BQYl4
Ju9dnW431/tcN4lh3IsZhTUGTuSDT6XqFrlkV0bRRhzCjoL/drs6F14C+KVDKyhG3r52
XJF4hsRbDAqNskfWUctAhhxuKaasWZnsDbFRLqXQ9e9603RZBXisIwj5+ISbhrDMQuss
7y6wUOmKt4Chd4phxqpyAibjlGuegQvXQWP5ncIDRWbIiOPUV6N7Q875EXCR9TsD35Gy
6ttg==;
darn=patchwork.amarulasolutions.com
ARC-Authentication-Results: i=2; mx.google.com;
dkim=pass header.i=@amarulasolutions.com header.s=google
header.b=niT7n4yz;
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=1777474325; x=1778079125;
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:message-id:date:subject:cc:to:from
:from:to:cc:subject:date:message-id:reply-to;
bh=HBGU5YUH0mSm8FRsHQNYhFG/LxUoxi6YzF83JRGSPXs=;
b=M3N57Bx2Bve1dvl2L04UH3CBK43A/wlDYct9L+6aT7nfI+Mw++M4IG0o1XAnpMSnof
icBHNMTY06sVebxsiQKf0gH16n8ZUES3oRk4+HDfXBAOv69ALKXkUP9KwsAEABGcN/25
l4ubKDc58d1iUR7MBs2/KZbAPqN0AC/siD7Rg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20251104; t=1777474325; x=1778079125;
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
: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=HBGU5YUH0mSm8FRsHQNYhFG/LxUoxi6YzF83JRGSPXs=;
b=YrO8RVzQPw6zRxILA5RCUOurxH9mQKqVQhqWYb4GJ3O/WLMwoXIng4hIuUDxMsRtzI
ZoKCgbYkk1sl1DA62N3XwYHek98Y1bxM1mzZqvnKy2GnWNLZFZp6NTbGghGGxrF2FIFB
E1CACfaBSQi953TxaKNSv378qJuUWZssV8mgLoq3Y1FOewfBDqMiLeycVB9PQKF7luuj
pIu18niyKDwEkNDB4d+WY3WkNELMBv0YksfnfStHiucpVj4mZB0eAvEwviM3ntLLYjTS
oKkEx2bh0csTd6M8QERc9Gnaz61F6Ls+TobUKpv2/nqelgokZdADOyVcxhHXcV+ezwTU
dfug==
X-Forwarded-Encrypted: i=2;
AFNElJ/atGs8dZBNt/aAdiIFGJ6q3VfuwTj85mdtmEb3l8vZ9Vl3+iQlmSDf8CPgRUH7ggb02iynGc3hDkvZoE4F@patchwork.amarulasolutions.com
X-Gm-Message-State: AOJu0YwC/Q8xlE8rnnWOzVXHMsH6qAYMOhb25Xz/Eu4YrNUZl/wf4chU
naWUo64m+mx90r0xn+zXTpr54XL8Lu4lYxlA0/UbTVJCzVAOaJ3ryU0BH8/rOwmHpIqWlA==
X-Received: by 2002:a05:6000:2502:b0:439:c1ca:82be with SMTP id
ffacd0b85a97d-446494ea24amr15426213f8f.28.1777474324739;
Wed, 29 Apr 2026 07:52:04 -0700 (PDT)
X-BeenThere: linux-amarula@amarulasolutions.com;
h="AUV6zMOg8j0MX7RAwFw4JBHdDwR7D9QIbKtvL/mj1lKQW/UQrA=="
Received: by 2002:a05:6000:4406:b0:447:1969:b4cd with SMTP id
ffacd0b85a97d-4471969b55cls791982f8f.1.-pod-prod-06-eu; Wed, 29 Apr 2026
07:52:03 -0700 (PDT)
X-Received: by 2002:a05:6000:1869:b0:43d:2be:e54 with SMTP id
ffacd0b85a97d-44649ba1e4emr14269746f8f.39.1777474322850;
Wed, 29 Apr 2026 07:52:02 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1777474322; cv=none;
d=google.com; s=arc-20240605;
b=NZmDlFD61dn0WTXoHdAXbU/46Wum8vjxY8s/7gLtBTu3xDGj5HUnEecrZDjeEsJBnk
DeKw2IFDMYQ58XkdDGNoPp0hQR+61BzzpGLLvrpXIxM+vjE8X2MmV3Syi3jlqQvK7LVH
MlHGvAt6duZmuDvvrgstNUWwKwd34U6imedm+ACQJzm1BJ8ArN5PTsLUmUGXuxvZ14aE
vpaHLfOETE0N257Kw+9E6WMFyyFaWgQMh5t1/OsRmbqinz+vVoGM868X/ypZASbJLh52
9PNDXal1+B3YxyVLAExVgJexZFoJngOr5PUHOwZig2kPghlabIXyq+4fEn4QUetEmIRj
eVrA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
s=arc-20240605;
h=content-transfer-encoding:mime-version:message-id:date:subject:cc
:to:from:dkim-signature;
bh=zjtG7uGof/B7apGWWCaoVokjxtDZoPRCdUh0fiXShhg=;
fh=WmrJNaIHrGP10pjMSykFMaRG8yB05aer+1jA6msjLXU=;
b=KcVEIipIjFWs0ii9rqqs87WxKK/61ghReC85CYjpFgQJ8ePeLbUPtt1OCMcVVVhnki
ME2v/eaTNfEIrYMFpyVK2W0/eIGblDxdIht6IW4vwEBMq1FueG8eds8kHfFH8FwUka5V
v6RKwXchtUWK3/vI7O3oK125dO8eixoOVkYSC/LGs3fGcfsnIVeTjycekxkFE/UQ1oC7
7XN/hZOObFP40mj0J6yPKs3SA/ziVFV8p4fb97kTePIS48YB53palboPXK6oRCcywW6M
jM6Y0+JHqS2Wi4Rf8SGBPiDAcwyJFp9NGSm3zphn26pOAEnwCNGm//bnuwr2gqaag9TI
5oJg==;
dara=google.com
ARC-Authentication-Results: i=1; mx.google.com;
dkim=pass header.i=@amarulasolutions.com header.s=google
header.b=niT7n4yz;
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-447b5924d31sor302343f8f.7.2026.04.29.07.52.02
for <linux-amarula@amarulasolutions.com>
(Google Transport Security);
Wed, 29 Apr 2026 07:52:02 -0700 (PDT)
Received-SPF: pass (google.com: domain of dario.binacchi@amarulasolutions.com
designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41;
X-Gm-Gg: AeBDietUQW8XYE21eL38ggHfEQmDS3GU+jL3pniTEotMNXWTKI/XaxmVHQiUMrTZbcK
OFpaG4Tu71/s/gnsdQVscK8oDgmprOrIfr1seMVC0MG3R5ZupJDPOmpItvNvv93c1gZb7HkvoZj
OO/Xt1W9N59oSoDZ3kIhd23ZJOcJw4+dp/fkjYbAk+Vqhju3NiwgOE7VnrOzOZ/W1Th0a56RHDQ
4HveTAjYu83hSzGVflP3lGmIQCa0ij8ruRDajvu1v7se7TFD7+3jLoqcxE3zL/enT/zP6fzy1fD
2XHhpXmIOFwPiCes5glvvs347U6I0s2y+rxJ68Q82w0HtwX0zKqtSEqU5x4w7E9oDAKO+2NdLWx
4zVfRt29nLNjSYVTewnVL/4XUmLnNsBPJHJxK2Z92MlnWjykm+D271KE0Ycn8JeVv0oXZ8eiQNS
Z/Wyjj5u/TtU5qbP1yzPJX8+hwuXV/thoHJch33cyIf2xPe0Kp/vzzz0CpnRQyjRBfLDlEAJTI7
d0wddAOiCDJ13okQ8D9tzC3Mn8MTBEFW5E5jym4XdmwxTy2Fd+NilCcYCFfzRHFZOSlYYDamnTx
Sq0rv2hc80FCjYk6KBdFvQC9UBE8Uif1YnE=
X-Received: by 2002:a05:6000:2287:b0:43f:dc86:d61f with SMTP id
ffacd0b85a97d-44647cda901mr13828752f8f.14.1777474321574;
Wed, 29 Apr 2026 07:52:01 -0700 (PDT)
Received: from dario-ThinkPad-P14s-Gen-5.homenet.telecomitalia.it
(host-82-56-22-134.retail.telecomitalia.it. [82.56.22.134])
by smtp.gmail.com with ESMTPSA id
ffacd0b85a97d-447b3d481b2sm6551566f8f.4.2026.04.29.07.52.00
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Wed, 29 Apr 2026 07:52:01 -0700 (PDT)
From: Dario Binacchi <dario.binacchi@amarulasolutions.com>
To: openembedded-core@lists.openembedded.org
Cc: linux-amarula@amarulasolutions.com,
Dario Binacchi <dario.binacchi@amarulasolutions.com>
Subject: [OE-core][PATCH] libfwumdata: add new recipe
Date: Wed, 29 Apr 2026 16:51:36 +0200
Message-ID: <20260429145136.618168-1-dario.binacchi@amarulasolutions.com>
X-Mailer: git-send-email 2.43.0
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=niT7n4yz;
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: <linux-amarula.amarulasolutions.com>
X-Spam-Checked-In-Group: linux-amarula@amarulasolutions.com
X-Google-Group-Id: 476853432473
List-Post:
<https://groups.google.com/a/amarulasolutions.com/group/linux-amarula/post>,
<mailto:linux-amarula@amarulasolutions.com>
List-Help:
<https://support.google.com/a/amarulasolutions.com/bin/topic.py?topic=25838>,
<mailto:linux-amarula+help@amarulasolutions.com>
List-Archive:
<https://groups.google.com/a/amarulasolutions.com/group/linux-amarula/>
List-Unsubscribe:
<mailto:googlegroups-manage+476853432473+unsubscribe@googlegroups.com>,
<https://groups.google.com/a/amarulasolutions.com/group/linux-amarula/subscribe>
|
| Series |
[OE-core] libfwumdata: add new recipe
|
|
Commit Message
Dario Binacchi
April 29, 2026, 2:51 p.m. UTC
libfwumdata is a lightweight C library for parsing, validating (CRC32),
and manipulating Firmware Update (FWU) metadata, allowing tools such as
RAUC or SWUpdate, and in general any application, to modify the boot
bank selection.
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
---
meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb | 22 ++++++++++++++++++++
1 file changed, 22 insertions(+)
create mode 100644 meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb
Comments
This should probably go to meta-oe? Oe-core carries essential packages and toolchains and this doesn't seem like it meets the criteria. Alex On Wed, 29 Apr 2026 at 17:05, Dario Binacchi via lists.openembedded.org <dario.binacchi=amarulasolutions.com@lists.openembedded.org> wrote: > > libfwumdata is a lightweight C library for parsing, validating (CRC32), > and manipulating Firmware Update (FWU) metadata, allowing tools such as > RAUC or SWUpdate, and in general any application, to modify the boot > bank selection. > > Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> > --- > meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb | 22 ++++++++++++++++++++ > 1 file changed, 22 insertions(+) > create mode 100644 meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > > diff --git a/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb b/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > new file mode 100644 > index 000000000000..838b4983c21d > --- /dev/null > +++ b/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > @@ -0,0 +1,22 @@ > +SUMMARY = "Library to access Firmware Update (FWU) metadata" > + > +DESCRIPTION = "This package contains a library to read and modify FWU \ > +metadata. It provides a minimal API to allow userspace applications, such as \ > +SWUpdate, RAUC or any other OTA update manager, to modify the boot bank \ > +selection." > + > +HOMEPAGE = "https://github.com/passgat/libfwumdata" > +LICENSE = "LGPL-2.1-or-later" > +LIC_FILES_CHKSUM = "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c" > +SECTION = "libs" > + > +SRC_URI = "git://github.com/passgat/libfwumdata;protocol=https;branch=master" > +SRCREV = "c6e235d3cf0467211ca6946bd10a2c8bdc0d5053" > + > +S = "${WORKDIR}/git" > + > +inherit cmake lib_package > + > +DEPENDS = "zlib" > + > +BBCLASSEXTEND = "native" > -- > 2.43.0 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#236110): https://lists.openembedded.org/g/openembedded-core/message/236110 > Mute This Topic: https://lists.openembedded.org/mt/119065936/1686489 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- > To unsubscribe from this group and stop receiving emails from it, send an email to linux-amarula+unsubscribe@amarulasolutions.com.
Hello Dario I have some questions. Why are you maintaining a custom version for this ? I can see that U-boot has already a support for this: https://github.com/u-boot/u-boot/tree/master/tools/fwumdata_src Also, vendors U-boot provide support for this, such as ST/iMX: https://github.com/STMicroelectronics/u-boot/blob/v2023.10-stm32mp/tools/mkfwumdata.c I see that the already provided tool is enough to update metadata (supports V2), so what your library is adding to that ? Do we really need it in OE core or meta-oe ? Kind regards Talel On Wed, Apr 29, 2026 at 4:12 PM Alexander Kanavin via lists.openembedded.org <alex.kanavin=gmail.com@lists.openembedded.org> wrote: > This should probably go to meta-oe? Oe-core carries essential packages > and toolchains and this doesn't seem like it meets the criteria. > > Alex > > On Wed, 29 Apr 2026 at 17:05, Dario Binacchi via > lists.openembedded.org > <dario.binacchi=amarulasolutions.com@lists.openembedded.org> wrote: > > > > libfwumdata is a lightweight C library for parsing, validating (CRC32), > > and manipulating Firmware Update (FWU) metadata, allowing tools such as > > RAUC or SWUpdate, and in general any application, to modify the boot > > bank selection. > > > > Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> > > --- > > meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb | 22 ++++++++++++++++++++ > > 1 file changed, 22 insertions(+) > > create mode 100644 meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > > > > diff --git a/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > b/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > > new file mode 100644 > > index 000000000000..838b4983c21d > > --- /dev/null > > +++ b/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > > @@ -0,0 +1,22 @@ > > +SUMMARY = "Library to access Firmware Update (FWU) metadata" > > + > > +DESCRIPTION = "This package contains a library to read and modify FWU \ > > +metadata. It provides a minimal API to allow userspace applications, > such as \ > > +SWUpdate, RAUC or any other OTA update manager, to modify the boot bank > \ > > +selection." > > + > > +HOMEPAGE = "https://github.com/passgat/libfwumdata" > > +LICENSE = "LGPL-2.1-or-later" > > +LIC_FILES_CHKSUM = > "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c" > > +SECTION = "libs" > > + > > +SRC_URI = "git:// > github.com/passgat/libfwumdata;protocol=https;branch=master" > > +SRCREV = "c6e235d3cf0467211ca6946bd10a2c8bdc0d5053" > > + > > +S = "${WORKDIR}/git" > > + > > +inherit cmake lib_package > > + > > +DEPENDS = "zlib" > > + > > +BBCLASSEXTEND = "native" > > -- > > 2.43.0 > > > > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#236111): > https://lists.openembedded.org/g/openembedded-core/message/236111 > Mute This Topic: https://lists.openembedded.org/mt/119065936/1955228 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [ > bhstalel@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- > > To unsubscribe from this group and stop receiving emails from it, send an email to linux-amarula+unsubscribe@amarulasolutions.com. <div dir="ltr">Hello Dario<div><br></div><div>I have some questions.</div><div><br></div><div>Why are you maintaining a custom version for this ?</div><div><br></div><div>I can see that U-boot has already a support for this: <a href="https://github.com/u-boot/u-boot/tree/master/tools/fwumdata_src">https://github.com/u-boot/u-boot/tree/master/tools/fwumdata_src</a></div><div><br></div><div>Also, vendors U-boot provide support for this, such as ST/iMX: <a href="https://github.com/STMicroelectronics/u-boot/blob/v2023.10-stm32mp/tools/mkfwumdata.c">https://github.com/STMicroelectronics/u-boot/blob/v2023.10-stm32mp/tools/mkfwumdata.c</a></div><div><br></div><div>I see that the already provided tool is enough to update metadata (supports V2), so what your library is adding to that ?</div><div><br></div><div>Do we really need it in OE core or meta-oe ?</div><div><br></div><div>Kind regards</div><div>Talel</div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Wed, Apr 29, 2026 at 4:12 PM Alexander Kanavin via <a href="http://lists.openembedded.org">lists.openembedded.org</a> <alex.kanavin=<a href="mailto:gmail.com@lists.openembedded.org">gmail.com@lists.openembedded.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">This should probably go to meta-oe? Oe-core carries essential packages<br> and toolchains and this doesn't seem like it meets the criteria.<br> <br> Alex<br> <br> On Wed, 29 Apr 2026 at 17:05, Dario Binacchi via<br> <a href="http://lists.openembedded.org" rel="noreferrer" target="_blank">lists.openembedded.org</a><br> <dario.binacchi=<a href="mailto:amarulasolutions.com@lists.openembedded.org" target="_blank">amarulasolutions.com@lists.openembedded.org</a>> wrote:<br> ><br> > libfwumdata is a lightweight C library for parsing, validating (CRC32),<br> > and manipulating Firmware Update (FWU) metadata, allowing tools such as<br> > RAUC or SWUpdate, and in general any application, to modify the boot<br> > bank selection.<br> ><br> > Signed-off-by: Dario Binacchi <<a href="mailto:dario.binacchi@amarulasolutions.com" target="_blank">dario.binacchi@amarulasolutions.com</a>><br> > ---<br> > meta/recipes-bsp/u-boot/<a href="http://libfwumdata_0.1.0.bb" rel="noreferrer" target="_blank">libfwumdata_0.1.0.bb</a> | 22 ++++++++++++++++++++<br> > 1 file changed, 22 insertions(+)<br> > create mode 100644 meta/recipes-bsp/u-boot/<a href="http://libfwumdata_0.1.0.bb" rel="noreferrer" target="_blank">libfwumdata_0.1.0.bb</a><br> ><br> > diff --git a/meta/recipes-bsp/u-boot/<a href="http://libfwumdata_0.1.0.bb" rel="noreferrer" target="_blank">libfwumdata_0.1.0.bb</a> b/meta/recipes-bsp/u-boot/<a href="http://libfwumdata_0.1.0.bb" rel="noreferrer" target="_blank">libfwumdata_0.1.0.bb</a><br> > new file mode 100644<br> > index 000000000000..838b4983c21d<br> > --- /dev/null<br> > +++ b/meta/recipes-bsp/u-boot/<a href="http://libfwumdata_0.1.0.bb" rel="noreferrer" target="_blank">libfwumdata_0.1.0.bb</a><br> > @@ -0,0 +1,22 @@<br> > +SUMMARY = "Library to access Firmware Update (FWU) metadata"<br> > +<br> > +DESCRIPTION = "This package contains a library to read and modify FWU \<br> > +metadata. It provides a minimal API to allow userspace applications, such as \<br> > +SWUpdate, RAUC or any other OTA update manager, to modify the boot bank \<br> > +selection."<br> > +<br> > +HOMEPAGE = "<a href="https://github.com/passgat/libfwumdata" rel="noreferrer" target="_blank">https://github.com/passgat/libfwumdata</a>"<br> > +LICENSE = "LGPL-2.1-or-later"<br> > +LIC_FILES_CHKSUM = "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c"<br> > +SECTION = "libs"<br> > +<br> > +SRC_URI = "git://<a href="http://github.com/passgat/libfwumdata;protocol=https;branch=master" rel="noreferrer" target="_blank">github.com/passgat/libfwumdata;protocol=https;branch=master</a>"<br> > +SRCREV = "c6e235d3cf0467211ca6946bd10a2c8bdc0d5053"<br> > +<br> > +S = "${WORKDIR}/git"<br> > +<br> > +inherit cmake lib_package<br> > +<br> > +DEPENDS = "zlib"<br> > +<br> > +BBCLASSEXTEND = "native"<br> > --<br> > 2.43.0<br> ><br> ><br> > <br> ><br> <br> -=-=-=-=-=-=-=-=-=-=-=-<br> Links: You receive all messages sent to this group.<br> View/Reply Online (#236111): <a href="https://lists.openembedded.org/g/openembedded-core/message/236111" rel="noreferrer" target="_blank">https://lists.openembedded.org/g/openembedded-core/message/236111</a><br> Mute This Topic: <a href="https://lists.openembedded.org/mt/119065936/1955228" rel="noreferrer" target="_blank">https://lists.openembedded.org/mt/119065936/1955228</a><br> Group Owner: <a href="mailto:openembedded-core%2Bowner@lists.openembedded.org" target="_blank">openembedded-core+owner@lists.openembedded.org</a><br> Unsubscribe: <a href="https://lists.openembedded.org/g/openembedded-core/unsub" rel="noreferrer" target="_blank">https://lists.openembedded.org/g/openembedded-core/unsub</a> [<a href="mailto:bhstalel@gmail.com" target="_blank">bhstalel@gmail.com</a>]<br> -=-=-=-=-=-=-=-=-=-=-=-<br> <br> </blockquote></div> <p></p> To unsubscribe from this group and stop receiving emails from it, send an email to <a href="mailto:linux-amarula+unsubscribe@amarulasolutions.com">linux-amarula+unsubscribe@amarulasolutions.com</a>.<br />
On Wed Apr 29, 2026 at 4:51 PM CEST, Dario Binacchi via lists.openembedded.org wrote: > libfwumdata is a lightweight C library for parsing, validating (CRC32), > and manipulating Firmware Update (FWU) metadata, allowing tools such as > RAUC or SWUpdate, and in general any application, to modify the boot > bank selection. > > Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> > --- Hi Dario, Thanks for your patch. In addition to Alex comment, I note build is failing on the autobuilder: ERROR: libfwumdata-0.1.0-r0 do_unpack: Recipes that set S = "${WORKDIR}/git" or S = "${UNPACKDIR}/git" should remove that assignment, as S set by bitbake.conf in oe-core now works. https://autobuilder.yoctoproject.org/valkyrie/#/builders/59/builds/3709 Thanks, Mathieu
Hi Alexander, On Wed, Apr 29, 2026 at 5:12 PM Alexander Kanavin <alex.kanavin@gmail.com> wrote: > This should probably go to meta-oe? Oe-core carries essential packages > and toolchains and this doesn't seem like it meets the criteria. > Hi Alex, I submitted this to oe-core because it seems to me similar to libubootenv. On platforms using the FWU A/B scheme (like STM32MP25), FWU metadata effectively replaces traditional U-Boot variables as the only mechanism to control boot flow. Furthermore I recently submitted a patch [1] to SWUpdate that uses this library. The SWUpdate maintainer pointed out that managing these FWU metadata fields belongs logically to SWUpdate's "bootloader" interface, rather than being handled as a generic script. This reinforces that libfwumdata operates in the exact same domain as U-Boot environment variables. Finally, since it shares libubootenv's configuration pattern management, oe-core seemed the natural fit. However, I am perfectly fine moving it to meta-oe if you prefer. [1] https://groups.google.com/g/swupdate/c/kYr2Hy-f3us Thanks and regards, Dario > > Alex > > On Wed, 29 Apr 2026 at 17:05, Dario Binacchi via > lists.openembedded.org > <dario.binacchi=amarulasolutions.com@lists.openembedded.org> wrote: > > > > libfwumdata is a lightweight C library for parsing, validating (CRC32), > > and manipulating Firmware Update (FWU) metadata, allowing tools such as > > RAUC or SWUpdate, and in general any application, to modify the boot > > bank selection. > > > > Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> > > --- > > meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb | 22 ++++++++++++++++++++ > > 1 file changed, 22 insertions(+) > > create mode 100644 meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > > > > diff --git a/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > b/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > > new file mode 100644 > > index 000000000000..838b4983c21d > > --- /dev/null > > +++ b/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb > > @@ -0,0 +1,22 @@ > > +SUMMARY = "Library to access Firmware Update (FWU) metadata" > > + > > +DESCRIPTION = "This package contains a library to read and modify FWU \ > > +metadata. It provides a minimal API to allow userspace applications, > such as \ > > +SWUpdate, RAUC or any other OTA update manager, to modify the boot bank > \ > > +selection." > > + > > +HOMEPAGE = "https://github.com/passgat/libfwumdata" > > +LICENSE = "LGPL-2.1-or-later" > > +LIC_FILES_CHKSUM = > "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c" > > +SECTION = "libs" > > + > > +SRC_URI = "git:// > github.com/passgat/libfwumdata;protocol=https;branch=master" > > +SRCREV = "c6e235d3cf0467211ca6946bd10a2c8bdc0d5053" > > + > > +S = "${WORKDIR}/git" > > + > > +inherit cmake lib_package > > + > > +DEPENDS = "zlib" > > + > > +BBCLASSEXTEND = "native" > > -- > > 2.43.0 > > > > > > -=-=-=-=-=-=-=-=-=-=-=- > > Links: You receive all messages sent to this group. > > View/Reply Online (#236110): > https://lists.openembedded.org/g/openembedded-core/message/236110 > > Mute This Topic: https://lists.openembedded.org/mt/119065936/1686489 > > Group Owner: openembedded-core+owner@lists.openembedded.org > > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [ > alex.kanavin@gmail.com] > > -=-=-=-=-=-=-=-=-=-=-=- > > >
Hi Talel, On Wed, Apr 29, 2026 at 7:10 PM Talel BELHADJ SALEM <bhstalel@gmail.com> wrote: > Hello Dario > > I have some questions. > > Why are you maintaining a custom version for this ? > > I can see that U-boot has already a support for this: > https://github.com/u-boot/u-boot/tree/master/tools/fwumdata_src > > Also, vendors U-boot provide support for this, such as ST/iMX: > https://github.com/STMicroelectronics/u-boot/blob/v2023.10-stm32mp/tools/mkfwumdata.c > > I see that the already provided tool is enough to update metadata > (supports V2), so what your library is adding to that ? > > Do we really need it in OE core or meta-oe ? > While the primary purpose of mkfwumdata is to generate a complete metadata image from scratch, typically during the build process, the fwumdata tool, on the other hand, was designed for targeted runtime manipulation of existing metadata. The distinction between the two tools in a real-world scenario, can be seen in my recent PR for the ST BSP [1]; Build-time: In commit [2] mkfwumdata is used to generate the initial metadata file to be included in the WIC image. git grep TF_A_METADATA_TOOL recipes-bsp/trusted-firmware-a/tf-a-stm32mp.inc:TF_A_METADATA_TOOL_NAME ?= "mkfwumdata" recipes-bsp/trusted-firmware-a/tf-a-stm32mp.inc:TF_A_METADATA_TOOL ?= "${STAGING_BINDIR_NATIVE}/${TF_A_METADATA_TOOL_NAME}" Runtime: In commit [3], fwumdata is used within a systemd service. Upon boot, it checks if the current bank is in the "valid" state and sets it to "accepted" to prevent the Arm Trusted Firmware (ATF) from performing an unwanted rollback. The next logical step, and the reason for this patch, is to allow OTA managers like SWUpdate or RAUC, as well as proprietary applications, to easily trigger a bank switch. While they could theoretically call the fwumdata command-line tool, providing a dedicated, lightweight C library is a much cleaner and more integrated approach for C/C++ applications than relying on system() or exec(). Furthermore, this first version of libfwumdata (v0.1.0) minimizes write operations to just the three fields strictly necessary for boot bank selection: - active_index - previous_index - bank_state This limited scope currently provides the added benefit of increasing safety by preventing userspace applications from accidentally corrupting other parts of the metadata. [1] https://github.com/STMicroelectronics/meta-st-stm32mp/pull/110 [2] https://github.com/STMicroelectronics/meta-st-stm32mp/pull/110/changes/d7e32fdbfca3b4489a30f28101f0184e211733c6 [3] https://github.com/STMicroelectronics/meta-st-stm32mp/pull/110/changes/ed6a9c52d9d32abcf281f986f0506ff4dbde1c5a Thanks and regards, Dario > > Kind regards > Talel > > On Wed, Apr 29, 2026 at 4:12 PM Alexander Kanavin via > lists.openembedded.org <alex.kanavin=gmail.com@lists.openembedded.org> > wrote: > >> This should probably go to meta-oe? Oe-core carries essential packages >> and toolchains and this doesn't seem like it meets the criteria. >> >> Alex >> >> On Wed, 29 Apr 2026 at 17:05, Dario Binacchi via >> lists.openembedded.org >> <dario.binacchi=amarulasolutions.com@lists.openembedded.org> wrote: >> > >> > libfwumdata is a lightweight C library for parsing, validating (CRC32), >> > and manipulating Firmware Update (FWU) metadata, allowing tools such as >> > RAUC or SWUpdate, and in general any application, to modify the boot >> > bank selection. >> > >> > Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> >> > --- >> > meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb | 22 ++++++++++++++++++++ >> > 1 file changed, 22 insertions(+) >> > create mode 100644 meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb >> > >> > diff --git a/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb >> b/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb >> > new file mode 100644 >> > index 000000000000..838b4983c21d >> > --- /dev/null >> > +++ b/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb >> > @@ -0,0 +1,22 @@ >> > +SUMMARY = "Library to access Firmware Update (FWU) metadata" >> > + >> > +DESCRIPTION = "This package contains a library to read and modify FWU \ >> > +metadata. It provides a minimal API to allow userspace applications, >> such as \ >> > +SWUpdate, RAUC or any other OTA update manager, to modify the boot >> bank \ >> > +selection." >> > + >> > +HOMEPAGE = "https://github.com/passgat/libfwumdata" >> > +LICENSE = "LGPL-2.1-or-later" >> > +LIC_FILES_CHKSUM = >> "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c" >> > +SECTION = "libs" >> > + >> > +SRC_URI = "git:// >> github.com/passgat/libfwumdata;protocol=https;branch=master" >> > +SRCREV = "c6e235d3cf0467211ca6946bd10a2c8bdc0d5053" >> > + >> > +S = "${WORKDIR}/git" >> > + >> > +inherit cmake lib_package >> > + >> > +DEPENDS = "zlib" >> > + >> > +BBCLASSEXTEND = "native" >> > -- >> > 2.43.0 >> > >> > >> > >> > >> >> -=-=-=-=-=-=-=-=-=-=-=- >> Links: You receive all messages sent to this group. >> View/Reply Online (#236111): >> https://lists.openembedded.org/g/openembedded-core/message/236111 >> Mute This Topic: https://lists.openembedded.org/mt/119065936/1955228 >> Group Owner: openembedded-core+owner@lists.openembedded.org >> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [ >> bhstalel@gmail.com] >> -=-=-=-=-=-=-=-=-=-=-=- >> >>
Hi Mathieu, On Thu, Apr 30, 2026 at 9:28 AM Mathieu Dubois-Briand < mathieu.dubois-briand@bootlin.com> wrote: > On Wed Apr 29, 2026 at 4:51 PM CEST, Dario Binacchi via > lists.openembedded.org wrote: > > libfwumdata is a lightweight C library for parsing, validating (CRC32), > > and manipulating Firmware Update (FWU) metadata, allowing tools such as > > RAUC or SWUpdate, and in general any application, to modify the boot > > bank selection. > > > > Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> > > --- > > Hi Dario, > > Thanks for your patch. > > In addition to Alex comment, I note build is failing on the autobuilder: > > ERROR: libfwumdata-0.1.0-r0 do_unpack: Recipes that set S = > "${WORKDIR}/git" or S = "${UNPACKDIR}/git" should remove that assignment, > as S set by bitbake.conf in oe-core now works. > I will drop. Thanks and regards, Dario > > https://autobuilder.yoctoproject.org/valkyrie/#/builders/59/builds/3709 > > Thanks, > Mathieu > > -- > Mathieu Dubois-Briand, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com > >
diff --git a/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb b/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb new file mode 100644 index 000000000000..838b4983c21d --- /dev/null +++ b/meta/recipes-bsp/u-boot/libfwumdata_0.1.0.bb @@ -0,0 +1,22 @@ +SUMMARY = "Library to access Firmware Update (FWU) metadata" + +DESCRIPTION = "This package contains a library to read and modify FWU \ +metadata. It provides a minimal API to allow userspace applications, such as \ +SWUpdate, RAUC or any other OTA update manager, to modify the boot bank \ +selection." + +HOMEPAGE = "https://github.com/passgat/libfwumdata" +LICENSE = "LGPL-2.1-or-later" +LIC_FILES_CHKSUM = "file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c" +SECTION = "libs" + +SRC_URI = "git://github.com/passgat/libfwumdata;protocol=https;branch=master" +SRCREV = "c6e235d3cf0467211ca6946bd10a2c8bdc0d5053" + +S = "${WORKDIR}/git" + +inherit cmake lib_package + +DEPENDS = "zlib" + +BBCLASSEXTEND = "native"