Update FWU metadata-related tools by moving mkfwumdata.c into a new
tools/fwumdata_src/ directory structure. This refactoring prepares for the
addition of the fwumdata runtime tool, which will allow editing FWU
metadata directly from the target.

The Kconfig and Makefile entries are also moved into separate files within
the new directory (Kconfig and fwumdata.mk respectively) to keep all FWU
metadata tool configurations together and improve maintainability.

Signed-off-by: Kory Maincent <[email protected]>
---
 MAINTAINERS                           | 3 ++-
 tools/Kconfig                         | 9 +--------
 tools/Makefile                        | 4 +---
 tools/fwumdata_src/Kconfig            | 8 ++++++++
 tools/fwumdata_src/fwumdata.mk        | 7 +++++++
 tools/{ => fwumdata_src}/mkfwumdata.c | 0
 6 files changed, 19 insertions(+), 12 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index b43dae882b3..5f560f4a94e 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1250,9 +1250,10 @@ FWU Multi Bank Update
 M:     Sughosh Ganu <[email protected]>
 S:     Maintained
 T:     git https://source.denx.de/u-boot/custodians/u-boot-efi.git
+F:     doc/mkfwumdata.1
 F:     lib/fwu_updates/*
 F:     drivers/fwu-mdata/*
-F:     tools/mkfwumdata.c
+F:     tools/fwumdata_src/mkfwumdata.c
 
 GATEWORKS_SC
 M:     Tim Harvey <[email protected]>
diff --git a/tools/Kconfig b/tools/Kconfig
index 652b0f22557..9fe8b0f87d8 100644
--- a/tools/Kconfig
+++ b/tools/Kconfig
@@ -194,13 +194,6 @@ config LUT_SEQUENCE
        help
          Look Up Table Sequence
 
-config TOOLS_MKFWUMDATA
-       bool "Build mkfwumdata command"
-       default y if FWU_MULTI_BANK_UPDATE
-       help
-         This command allows users to create a raw image of the FWU
-         metadata for initial installation of the FWU multi bank
-         update on the board. The installation method depends on
-         the platform.
+source tools/fwumdata_src/Kconfig
 
 endmenu
diff --git a/tools/Makefile b/tools/Makefile
index ae6a3052646..1c58bac3033 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -271,9 +271,7 @@ mkeficapsule-objs := generated/lib/uuid.o \
        mkeficapsule.o
 hostprogs-$(CONFIG_TOOLS_MKEFICAPSULE) += mkeficapsule
 
-mkfwumdata-objs := mkfwumdata.o generated/lib/crc32.o
-HOSTLDLIBS_mkfwumdata += -luuid
-hostprogs-$(CONFIG_TOOLS_MKFWUMDATA) += mkfwumdata
+include tools/fwumdata_src/fwumdata.mk
 
 # We build some files with extra pedantic flags to try to minimize things
 # that won't build on some weird host compiler -- though there are lots of
diff --git a/tools/fwumdata_src/Kconfig b/tools/fwumdata_src/Kconfig
new file mode 100644
index 00000000000..c033c560e8d
--- /dev/null
+++ b/tools/fwumdata_src/Kconfig
@@ -0,0 +1,8 @@
+config TOOLS_MKFWUMDATA
+       bool "Build mkfwumdata command"
+       default y if FWU_MULTI_BANK_UPDATE
+       help
+         This command allows users to create a raw image of the FWU
+         metadata for initial installation of the FWU multi bank
+         update on the board. The installation method depends on
+         the platform.
diff --git a/tools/fwumdata_src/fwumdata.mk b/tools/fwumdata_src/fwumdata.mk
new file mode 100644
index 00000000000..2ce618ef2ed
--- /dev/null
+++ b/tools/fwumdata_src/fwumdata.mk
@@ -0,0 +1,7 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
+# (C) Copyright 2025, Kory Maincent <[email protected]>
+
+mkfwumdata-objs := fwumdata_src/mkfwumdata.o generated/lib/crc32.o
+HOSTLDLIBS_mkfwumdata += -luuid
+hostprogs-$(CONFIG_TOOLS_MKFWUMDATA) += mkfwumdata
diff --git a/tools/mkfwumdata.c b/tools/fwumdata_src/mkfwumdata.c
similarity index 100%
rename from tools/mkfwumdata.c
rename to tools/fwumdata_src/mkfwumdata.c

-- 
2.43.0

Reply via email to