|
@@ -1172,7 +1172,6 @@ static int fit_check_fdt (const void *fit, int fdt_noffset, int verify)
|
|
/**
|
|
/**
|
|
* boot_relocate_fdt - relocate flat device tree
|
|
* boot_relocate_fdt - relocate flat device tree
|
|
* @lmb: pointer to lmb handle, will be used for memory mgmt
|
|
* @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_flat_tree: pointer to a char* variable, will hold fdt start address
|
|
* @of_size: pointer to a ulong variable, will hold fdt length
|
|
* @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
|
|
* 1 - failure
|
|
*/
|
|
*/
|
|
#if defined(CONFIG_SYS_BOOTMAPSZ)
|
|
#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 *fdt_blob = *of_flat_tree;
|
|
void *of_start = 0;
|
|
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 */
|
|
/* Pad the FDT by a specified amount */
|
|
of_len = *of_size + CONFIG_SYS_FDT_PAD;
|
|
of_len = *of_size + CONFIG_SYS_FDT_PAD;
|
|
of_start = (void *)(unsigned long)lmb_alloc_base(lmb, of_len, 0x1000,
|
|
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) {
|
|
if (of_start == 0) {
|
|
puts("device tree - allocation error\n");
|
|
puts("device tree - allocation error\n");
|
|
@@ -1567,11 +1565,9 @@ error:
|
|
* @lmb: pointer to lmb handle, will be used for memory mgmt
|
|
* @lmb: pointer to lmb handle, will be used for memory mgmt
|
|
* @cmd_start: pointer to a ulong variable, will hold cmdline start
|
|
* @cmd_start: pointer to a ulong variable, will hold cmdline start
|
|
* @cmd_end: pointer to a ulong variable, will hold cmdline end
|
|
* @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
|
|
* 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
|
|
* variable is present its contents is copied to allocated kernel
|
|
* command line.
|
|
* command line.
|
|
*
|
|
*
|
|
@@ -1579,14 +1575,13 @@ error:
|
|
* 0 - success
|
|
* 0 - success
|
|
* -1 - failure
|
|
* -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 *cmdline;
|
|
char *s;
|
|
char *s;
|
|
|
|
|
|
cmdline = (char *)(ulong)lmb_alloc_base(lmb, CONFIG_SYS_BARGSIZE, 0xf,
|
|
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)
|
|
if (cmdline == NULL)
|
|
return -1;
|
|
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
|
|
* boot_get_kbd - allocate and initialize kernel copy of board info
|
|
* @lmb: pointer to lmb handle, will be used for memory mgmt
|
|
* @lmb: pointer to lmb handle, will be used for memory mgmt
|
|
* @kbd: double pointer to board info data
|
|
* @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
|
|
* 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:
|
|
* returns:
|
|
* 0 - success
|
|
* 0 - success
|
|
* -1 - failure
|
|
* -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,
|
|
*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)
|
|
if (*kbd == NULL)
|
|
return -1;
|
|
return -1;
|
|
|
|
|