diff mbox

[U-Boot,v2,02/27] spl: Add a parameter to spl_set_header_raw_uboot()

Message ID 1474762817-23091-3-git-send-email-sjg@chromium.org
State Accepted
Delegated to: Tom Rini
Headers show

Commit Message

Simon Glass Sept. 25, 2016, 12:19 a.m. UTC
Rather than act on the global variable, pass the required struct in as a
parameter.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
---

Changes in v2: None

 common/spl/spl.c      | 14 +++++++-------
 common/spl/spl_nand.c |  2 +-
 include/spl.h         | 13 ++++++++++++-
 3 files changed, 20 insertions(+), 9 deletions(-)

Comments

Tom Rini Oct. 7, 2016, 12:32 a.m. UTC | #1
On Sat, Sep 24, 2016 at 06:19:52PM -0600, Simon Glass wrote:

> Rather than act on the global variable, pass the required struct in as a
> parameter.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Tom Rini <trini@konsulko.com>

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

Patch

diff --git a/common/spl/spl.c b/common/spl/spl.c
index e14ec80..1a4a5d8 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -82,13 +82,13 @@  __weak void spl_board_prepare_for_boot(void)
 	/* Nothing to do! */
 }
 
-void spl_set_header_raw_uboot(void)
+void spl_set_header_raw_uboot(struct spl_image_info *spl_image)
 {
-	spl_image.size = CONFIG_SYS_MONITOR_LEN;
-	spl_image.entry_point = CONFIG_SYS_UBOOT_START;
-	spl_image.load_addr = CONFIG_SYS_TEXT_BASE;
-	spl_image.os = IH_OS_U_BOOT;
-	spl_image.name = "U-Boot";
+	spl_image->size = CONFIG_SYS_MONITOR_LEN;
+	spl_image->entry_point = CONFIG_SYS_UBOOT_START;
+	spl_image->load_addr = CONFIG_SYS_TEXT_BASE;
+	spl_image->os = IH_OS_U_BOOT;
+	spl_image->name = "U-Boot";
 }
 
 int spl_parse_image_header(const struct image_header *header)
@@ -153,7 +153,7 @@  int spl_parse_image_header(const struct image_header *header)
 		/* Signature not found - assume u-boot.bin */
 		debug("mkimage signature not found - ih_magic = %x\n",
 			header->ih_magic);
-		spl_set_header_raw_uboot();
+		spl_set_header_raw_uboot(&spl_image);
 #endif
 	}
 	return 0;
diff --git a/common/spl/spl_nand.c b/common/spl/spl_nand.c
index 0e35e0f..8f9bd5da 100644
--- a/common/spl/spl_nand.c
+++ b/common/spl/spl_nand.c
@@ -20,7 +20,7 @@  int spl_nand_load_image(void)
 	nand_spl_load_image(CONFIG_SYS_NAND_U_BOOT_OFFS,
 			    CONFIG_SYS_NAND_U_BOOT_SIZE,
 			    (void *)CONFIG_SYS_NAND_U_BOOT_DST);
-	spl_set_header_raw_uboot();
+	spl_set_header_raw_uboot(&spl_image);
 	nand_deselect();
 
 	return 0;
diff --git a/include/spl.h b/include/spl.h
index 6c397ca..ce449ff 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -67,7 +67,18 @@  extern struct spl_image_info spl_image;
 void preloader_console_init(void);
 u32 spl_boot_device(void);
 u32 spl_boot_mode(const u32 boot_device);
-void spl_set_header_raw_uboot(void);
+
+/**
+ * spl_set_header_raw_uboot() - Set up a standard SPL image structure
+ *
+ * This sets up the given spl_image which the standard values obtained from
+ * config options: CONFIG_SYS_MONITOR_LEN, CONFIG_SYS_UBOOT_START,
+ * CONFIG_SYS_TEXT_BASE.
+ *
+ * @spl_image: Image to set up
+ */
+void spl_set_header_raw_uboot(struct spl_image_info *spl_image);
+
 int spl_parse_image_header(const struct image_header *header);
 void spl_board_prepare_for_linux(void);
 void spl_board_prepare_for_boot(void);