[OE-core] libfwumdata: add new recipe

Message ID 20260429145136.618168-1-dario.binacchi@amarulasolutions.com
State New
Headers show
Series
  • [OE-core] libfwumdata: add new recipe
Related show

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

Alexander Kanavin April 29, 2026, 3:12 p.m. UTC | #1
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.
Talel BELHADJ SALEM April 29, 2026, 5:10 p.m. UTC | #2
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> &lt;alex.kanavin=<a href="mailto:gmail.com@lists.openembedded.org">gmail.com@lists.openembedded.org</a>&gt; 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&#39;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>
&lt;dario.binacchi=<a href="mailto:amarulasolutions.com@lists.openembedded.org" target="_blank">amarulasolutions.com@lists.openembedded.org</a>&gt; wrote:<br>
&gt;<br>
&gt; libfwumdata is a lightweight C library for parsing, validating (CRC32),<br>
&gt; and manipulating Firmware Update (FWU) metadata, allowing tools such as<br>
&gt; RAUC or SWUpdate, and in general any application, to modify the boot<br>
&gt; bank selection.<br>
&gt;<br>
&gt; Signed-off-by: Dario Binacchi &lt;<a href="mailto:dario.binacchi@amarulasolutions.com" target="_blank">dario.binacchi@amarulasolutions.com</a>&gt;<br>
&gt; ---<br>
&gt;  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>
&gt;  1 file changed, 22 insertions(+)<br>
&gt;  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>
&gt;<br>
&gt; 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>
&gt; new file mode 100644<br>
&gt; index 000000000000..838b4983c21d<br>
&gt; --- /dev/null<br>
&gt; +++ 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>
&gt; @@ -0,0 +1,22 @@<br>
&gt; +SUMMARY = &quot;Library to access Firmware Update (FWU) metadata&quot;<br>
&gt; +<br>
&gt; +DESCRIPTION = &quot;This package contains a library to read and modify FWU \<br>
&gt; +metadata. It provides a minimal API to allow userspace applications, such as \<br>
&gt; +SWUpdate, RAUC or any other OTA update manager, to modify the boot bank \<br>
&gt; +selection.&quot;<br>
&gt; +<br>
&gt; +HOMEPAGE = &quot;<a href="https://github.com/passgat/libfwumdata" rel="noreferrer" target="_blank">https://github.com/passgat/libfwumdata</a>&quot;<br>
&gt; +LICENSE = &quot;LGPL-2.1-or-later&quot;<br>
&gt; +LIC_FILES_CHKSUM = &quot;file://LICENSES/LGPL-2.1-or-later.txt;md5=4fbd65380cdd255951079008b364516c&quot;<br>
&gt; +SECTION = &quot;libs&quot;<br>
&gt; +<br>
&gt; +SRC_URI = &quot;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>&quot;<br>
&gt; +SRCREV = &quot;c6e235d3cf0467211ca6946bd10a2c8bdc0d5053&quot;<br>
&gt; +<br>
&gt; +S = &quot;${WORKDIR}/git&quot;<br>
&gt; +<br>
&gt; +inherit cmake lib_package<br>
&gt; +<br>
&gt; +DEPENDS = &quot;zlib&quot;<br>
&gt; +<br>
&gt; +BBCLASSEXTEND = &quot;native&quot;<br>
&gt; --<br>
&gt; 2.43.0<br>
&gt;<br>
&gt;<br>
&gt; <br>
&gt;<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 />
'Mathieu Dubois-Briand' via Amarula Linux April 30, 2026, 7:28 a.m. UTC | #3
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
Dario Binacchi April 30, 2026, 10 a.m. UTC | #4
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]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
>
Dario Binacchi April 30, 2026, 10:02 a.m. UTC | #5
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]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>
>>
Dario Binacchi April 30, 2026, 10:03 a.m. UTC | #6
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
>
>

Patch

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"