Stop passing around bootmem_base value.
authorGrant Likely <grant.likely@linaro.org>
Mon, 28 Mar 2011 09:58:34 +0000 (09:58 +0000)
committerGerald Van Baren <gvb@unssw.com>
Tue, 26 Apr 2011 01:11:19 +0000 (21:11 -0400)
For the calls to boot_relocate_fdt(), boot_get_cmdline(), and
boot_get_kbd(), the value of bootmem_base is always obtained by
calling getenv_bootm_low().  Since the value always comes from the
same source, the calling signature for those functions can be
simplified by making them call getenv_bootm_low() directly.

Signed-off-by: Grant Likely <grant.likely@linaro.org>
arch/arm/lib/bootm.c
arch/m68k/lib/bootm.c
arch/powerpc/lib/bootm.c
common/cmd_bootm.c
common/image.c
include/image.h

index 77349530f02e10cc324aa43b90cf36db71f00493..aba13f4e86f7b1b102668c5cdc4a033e5365b6db 100644 (file)
@@ -178,7 +178,6 @@ static int bootm_linux_fdt(int machid, bootm_headers_t *images)
 {
        ulong rd_len;
        void (*kernel_entry)(int zero, int dt_machid, void *dtblob);
-       ulong bootmap_base = getenv_bootm_low();
        ulong of_size = images->ft_len;
        char **of_flat_tree = &images->ft_addr;
        ulong *initrd_start = &images->initrd_start;
@@ -194,7 +193,7 @@ static int bootm_linux_fdt(int machid, bootm_headers_t *images)
        if (ret)
                return ret;
 
-       ret = boot_relocate_fdt(lmb, bootmap_base, of_flat_tree, &of_size);
+       ret = boot_relocate_fdt(lmb, of_flat_tree, &of_size);
        if (ret)
                return ret;
 
index 76a2fb27c1b720c526d40ed665e829e93aac345b..1229ac7f255ba2b6067811368fcc47582ebe85de 100644 (file)
@@ -71,7 +71,6 @@ int do_bootm_linux(int flag, int argc, char * const argv[], bootm_headers_t *ima
        int ret;
 
        ulong cmd_start, cmd_end;
-       ulong bootmap_base;
        bd_t  *kbd;
        void  (*kernel) (bd_t *, ulong, ulong, ulong, ulong);
        struct lmb *lmb = &images->lmb;
@@ -79,17 +78,15 @@ int do_bootm_linux(int flag, int argc, char * const argv[], bootm_headers_t *ima
        if ((flag != 0) && (flag != BOOTM_STATE_OS_GO))
                return 1;
 
-       bootmap_base = getenv_bootm_low();
-
        /* allocate space and init command line */
-       ret = boot_get_cmdline (lmb, &cmd_start, &cmd_end, bootmap_base);
+       ret = boot_get_cmdline (lmb, &cmd_start, &cmd_end);
        if (ret) {
                puts("ERROR with allocation of cmdline\n");
                goto error;
        }
 
        /* allocate space for kernel copy of board info */
-       ret = boot_get_kbd (lmb, &kbd, bootmap_base);
+       ret = boot_get_kbd (lmb, &kbd);
        if (ret) {
                puts("ERROR with allocation of kernel bd\n");
                goto error;
index c7f3d084a3a226cbac4456e6ee6fbea24da5c10f..6e2a81b9aa564dec123e125f8d801ef299e72be7 100644 (file)
@@ -186,7 +186,6 @@ static void boot_prep_linux(void)
 
 static int boot_cmdline_linux(bootm_headers_t *images)
 {
-       ulong bootmap_base = getenv_bootm_low();
        ulong of_size = images->ft_len;
        struct lmb *lmb = &images->lmb;
        ulong *cmd_start = &images->cmdline_start;
@@ -196,7 +195,7 @@ static int boot_cmdline_linux(bootm_headers_t *images)
 
        if (!of_size) {
                /* allocate space and init command line */
-               ret = boot_get_cmdline (lmb, cmd_start, cmd_end, bootmap_base);
+               ret = boot_get_cmdline (lmb, cmd_start, cmd_end);
                if (ret) {
                        puts("ERROR with allocation of cmdline\n");
                        return ret;
@@ -208,7 +207,6 @@ static int boot_cmdline_linux(bootm_headers_t *images)
 
 static int boot_bd_t_linux(bootm_headers_t *images)
 {
-       ulong bootmap_base = getenv_bootm_low();
        ulong of_size = images->ft_len;
        struct lmb *lmb = &images->lmb;
        bd_t **kbd = &images->kbd;
@@ -217,7 +215,7 @@ static int boot_bd_t_linux(bootm_headers_t *images)
 
        if (!of_size) {
                /* allocate space for kernel copy of board info */
-               ret = boot_get_kbd (lmb, kbd, bootmap_base);
+               ret = boot_get_kbd (lmb, kbd);
                if (ret) {
                        puts("ERROR with allocation of kernel bd\n");
                        return ret;
@@ -235,7 +233,6 @@ static int boot_body_linux(bootm_headers_t *images)
        ulong *initrd_start = &images->initrd_start;
        ulong *initrd_end = &images->initrd_end;
 #if defined(CONFIG_OF_LIBFDT)
-       ulong bootmap_base = getenv_bootm_low();
        ulong of_size = images->ft_len;
        char **of_flat_tree = &images->ft_addr;
 #endif
@@ -258,7 +255,7 @@ static int boot_body_linux(bootm_headers_t *images)
                return ret;
 
 #if defined(CONFIG_OF_LIBFDT) && defined(CONFIG_SYS_BOOTMAPSZ)
-       ret = boot_relocate_fdt(lmb, bootmap_base, of_flat_tree, &of_size);
+       ret = boot_relocate_fdt(lmb, of_flat_tree, &of_size);
        if (ret)
                return ret;
 
index 778f6a429623f7f63c76c039c5cc163f190491e8..989bf737ff93e7a7b2f4a9d9fc3f0dbbdef91bbd 100644 (file)
@@ -547,8 +547,7 @@ int do_bootm_subcommand (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv
 #if defined(CONFIG_OF_LIBFDT) && defined(CONFIG_SYS_BOOTMAPSZ)
                case BOOTM_STATE_FDT:
                {
-                       ulong bootmap_base = getenv_bootm_low();
-                       ret = boot_relocate_fdt(&images.lmb, bootmap_base,
+                       ret = boot_relocate_fdt(&images.lmb,
                                &images.ft_addr, &images.ft_len);
                        break;
                }
index f63a2ff1a05b4d5aa3d38df62b3553ad31d6b21f..c86b86fbe70f4316d95e0c5e74dff31b9ce7f527 100644 (file)
@@ -1172,7 +1172,6 @@ static int fit_check_fdt (const void *fit, int fdt_noffset, int verify)
 /**
  * boot_relocate_fdt - relocate flat device tree
  * @lmb: pointer to lmb handle, will be used for memory mgmt
- * @bootmap_base: base address of the bootmap region
  * @of_flat_tree: pointer to a char* variable, will hold fdt start address
  * @of_size: pointer to a ulong variable, will hold fdt length
  *
@@ -1188,8 +1187,7 @@ static int fit_check_fdt (const void *fit, int fdt_noffset, int verify)
  *      1 - failure
  */
 #if defined(CONFIG_SYS_BOOTMAPSZ)
-int boot_relocate_fdt (struct lmb *lmb, ulong bootmap_base,
-               char **of_flat_tree, ulong *of_size)
+int boot_relocate_fdt (struct lmb *lmb, char **of_flat_tree, ulong *of_size)
 {
        void    *fdt_blob = *of_flat_tree;
        void    *of_start = 0;
@@ -1209,7 +1207,7 @@ int boot_relocate_fdt (struct lmb *lmb, ulong bootmap_base,
        /* Pad the FDT by a specified amount */
        of_len = *of_size + CONFIG_SYS_FDT_PAD;
        of_start = (void *)(unsigned long)lmb_alloc_base(lmb, of_len, 0x1000,
-                       (CONFIG_SYS_BOOTMAPSZ + bootmap_base));
+                       CONFIG_SYS_BOOTMAPSZ + getenv_bootm_low());
 
        if (of_start == 0) {
                puts("device tree - allocation error\n");
@@ -1567,11 +1565,9 @@ error:
  * @lmb: pointer to lmb handle, will be used for memory mgmt
  * @cmd_start: pointer to a ulong variable, will hold cmdline start
  * @cmd_end: pointer to a ulong variable, will hold cmdline end
- * @bootmap_base: ulong variable, holds offset in physical memory to
- * base of bootmap
  *
  * boot_get_cmdline() allocates space for kernel command line below
- * BOOTMAPSZ + bootmap_base address. If "bootargs" U-boot environemnt
+ * BOOTMAPSZ + getenv_bootm_low() address. If "bootargs" U-boot environemnt
  * variable is present its contents is copied to allocated kernel
  * command line.
  *
@@ -1579,14 +1575,13 @@ error:
  *      0 - success
  *     -1 - failure
  */
-int boot_get_cmdline (struct lmb *lmb, ulong *cmd_start, ulong *cmd_end,
-                       ulong bootmap_base)
+int boot_get_cmdline (struct lmb *lmb, ulong *cmd_start, ulong *cmd_end)
 {
        char *cmdline;
        char *s;
 
        cmdline = (char *)(ulong)lmb_alloc_base(lmb, CONFIG_SYS_BARGSIZE, 0xf,
-                                        CONFIG_SYS_BOOTMAPSZ + bootmap_base);
+                                    CONFIG_SYS_BOOTMAPSZ + getenv_bootm_low());
 
        if (cmdline == NULL)
                return -1;
@@ -1610,21 +1605,19 @@ int boot_get_cmdline (struct lmb *lmb, ulong *cmd_start, ulong *cmd_end,
  * boot_get_kbd - allocate and initialize kernel copy of board info
  * @lmb: pointer to lmb handle, will be used for memory mgmt
  * @kbd: double pointer to board info data
- * @bootmap_base: ulong variable, holds offset in physical memory to
- * base of bootmap
  *
  * boot_get_kbd() allocates space for kernel copy of board info data below
- * BOOTMAPSZ + bootmap_base address and kernel board info is initialized with
- * the current u-boot board info data.
+ * BOOTMAPSZ + getenv_bootm_low() address and kernel board info is initialized
+ * with the current u-boot board info data.
  *
  * returns:
  *      0 - success
  *     -1 - failure
  */
-int boot_get_kbd (struct lmb *lmb, bd_t **kbd, ulong bootmap_base)
+int boot_get_kbd (struct lmb *lmb, bd_t **kbd)
 {
        *kbd = (bd_t *)(ulong)lmb_alloc_base(lmb, sizeof(bd_t), 0xf,
-                                     CONFIG_SYS_BOOTMAPSZ + bootmap_base);
+                                    CONFIG_SYS_BOOTMAPSZ + getenv_bootm_low());
        if (*kbd == NULL)
                return -1;
 
index 005e0d24e4d99ac592d823f2a51dbf8dd2e51ecb..792de25104c85245741ad20cb046ba731cc3c738 100644 (file)
@@ -336,8 +336,7 @@ int boot_get_ramdisk (int argc, char * const argv[], bootm_headers_t *images,
 #ifdef CONFIG_OF_LIBFDT
 int boot_get_fdt (int flag, int argc, char * const argv[], bootm_headers_t *images,
                char **of_flat_tree, ulong *of_size);
-int boot_relocate_fdt (struct lmb *lmb, ulong bootmap_base,
-               char **of_flat_tree, ulong *of_size);
+int boot_relocate_fdt (struct lmb *lmb, char **of_flat_tree, ulong *of_size);
 #endif
 
 #ifdef CONFIG_SYS_BOOT_RAMDISK_HIGH
@@ -345,11 +344,10 @@ int boot_ramdisk_high (struct lmb *lmb, ulong rd_data, ulong rd_len,
                  ulong *initrd_start, ulong *initrd_end);
 #endif /* CONFIG_SYS_BOOT_RAMDISK_HIGH */
 #ifdef CONFIG_SYS_BOOT_GET_CMDLINE
-int boot_get_cmdline (struct lmb *lmb, ulong *cmd_start, ulong *cmd_end,
-                       ulong bootmap_base);
+int boot_get_cmdline (struct lmb *lmb, ulong *cmd_start, ulong *cmd_end);
 #endif /* CONFIG_SYS_BOOT_GET_CMDLINE */
 #ifdef CONFIG_SYS_BOOT_GET_KBD
-int boot_get_kbd (struct lmb *lmb, bd_t **kbd, ulong bootmap_base);
+int boot_get_kbd (struct lmb *lmb, bd_t **kbd);
 #endif /* CONFIG_SYS_BOOT_GET_KBD */
 #endif /* !USE_HOSTCC */