From 1f8e4bf55eb58bda715c1f8c8777081580f3246b Mon Sep 17 00:00:00 2001
From: Michal Simek <michal.simek@xilinx.com>
Date: Mon, 26 Mar 2018 16:31:26 +0200
Subject: [PATCH] image: fit: Show firmware configuration property if present

SPL ATF support requires to have firmware property which should be also
listed by mkimage -l when images is created.

The patch is also using this macro in spl_fit to match keyword.

When image is created:
 Default Configuration: 'config'
 Configuration 0 (config)
  Description:  ATF with full u-boot
  Kernel:       unavailable
  Firmware:     atf
  FDT:          dtb

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Jun Nie <jun.nie@linaro.org>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
---
 common/image-fit.c   | 4 ++++
 common/spl/spl_fit.c | 3 ++-
 include/image.h      | 1 +
 3 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/common/image-fit.c b/common/image-fit.c
index 4b03390454..06b25fefc7 100644
--- a/common/image-fit.c
+++ b/common/image-fit.c
@@ -1610,6 +1610,10 @@ void fit_conf_print(const void *fit, int noffset, const char *p)
 	if (uname)
 		printf("%s  Init Ramdisk: %s\n", p, uname);
 
+	uname = fdt_getprop(fit, noffset, FIT_FIRMWARE_PROP, NULL);
+	if (uname)
+		printf("%s  Firmware:     %s\n", p, uname);
+
 	for (fdt_index = 0;
 	     uname = fdt_stringlist_get(fit, noffset, FIT_FDT_PROP,
 					fdt_index, NULL), uname;
diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c
index be92ca4b4f..9f03e2648a 100644
--- a/common/spl/spl_fit.c
+++ b/common/spl/spl_fit.c
@@ -395,7 +395,8 @@ int spl_load_simple_fit(struct spl_image_info *spl_image,
 	 *   - fall back to using the first 'loadables' entry
 	 */
 	if (node < 0)
-		node = spl_fit_get_image_node(fit, images, "firmware", 0);
+		node = spl_fit_get_image_node(fit, images, FIT_FIRMWARE_PROP,
+					      0);
 #ifdef CONFIG_SPL_OS_BOOT
 	if (node < 0)
 		node = spl_fit_get_image_node(fit, images, FIT_KERNEL_PROP, 0);
diff --git a/include/image.h b/include/image.h
index a6f82aebfe..a579c5f509 100644
--- a/include/image.h
+++ b/include/image.h
@@ -920,6 +920,7 @@ int booti_setup(ulong image, ulong *relocated_addr, ulong *size);
 #define FIT_DEFAULT_PROP	"default"
 #define FIT_SETUP_PROP		"setup"
 #define FIT_FPGA_PROP		"fpga"
+#define FIT_FIRMWARE_PROP	"firmware"
 
 #define FIT_MAX_HASH_LEN	HASH_MAX_DIGEST_SIZE
 
-- 
2.39.5