diff mbox series

[v2] image-fdt: save name of FIT configuration in '/chosen' node

Message ID YlXaa3zNdkTAiSNF@makrotopia.org
State Accepted
Commit 5f2d5915f8ea4785bc2b8a26955e176a7898c15b
Delegated to: Tom Rini
Headers show
Series [v2] image-fdt: save name of FIT configuration in '/chosen' node | expand

Commit Message

Daniel Golle April 12, 2022, 8 p.m. UTC
It can be useful for the OS (Linux) to know which configuration has
been chosen by U-Boot when launching a FIT image.
Store the name of the FIT configuration node used in a new string
property called 'u-boot,bootconf' in the '/chosen' node in device tree.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
---
v2: change node name to 'u-boot,bootconf' instead of just 'bootconf'

Sibling PR to dt-schema: https://github.com/devicetree-org/dt-schema/pull/71

 boot/image-fdt.c | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Tom Rini April 12, 2022, 8:14 p.m. UTC | #1
On Tue, Apr 12, 2022 at 09:00:43PM +0100, Daniel Golle wrote:

> It can be useful for the OS (Linux) to know which configuration has
> been chosen by U-Boot when launching a FIT image.
> Store the name of the FIT configuration node used in a new string
> property called 'u-boot,bootconf' in the '/chosen' node in device tree.
> 
> Signed-off-by: Daniel Golle <daniel@makrotopia.org>

Reviewed-by: Tom Rini <trini@konsulko.com>
Tom Rini April 20, 2022, 1:12 p.m. UTC | #2
On Tue, Apr 12, 2022 at 09:00:43PM +0100, Daniel Golle wrote:

> It can be useful for the OS (Linux) to know which configuration has
> been chosen by U-Boot when launching a FIT image.
> Store the name of the FIT configuration node used in a new string
> property called 'u-boot,bootconf' in the '/chosen' node in device tree.
> 
> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> Reviewed-by: Tom Rini <trini@konsulko.com>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/boot/image-fdt.c b/boot/image-fdt.c
index 692a9ad3e4..fdb69926a2 100644
--- a/boot/image-fdt.c
+++ b/boot/image-fdt.c
@@ -601,6 +601,12 @@  int image_setup_libfdt(bootm_headers_t *images, void *blob,
 		goto err;
 	}
 
+	/* Store name of configuration node as u-boot,bootconf in /chosen node */
+	if (images->fit_uname_cfg)
+		fdt_find_and_setprop(blob, "/chosen", "u-boot,bootconf",
+					images->fit_uname_cfg,
+					strlen(images->fit_uname_cfg) + 1, 1);
+
 	/* Update ethernet nodes */
 	fdt_fixup_ethernet(blob);
 #if CONFIG_IS_ENABLED(CMD_PSTORE)