diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/cpu/armv7/omap-common/spl_nand.c | 2 | ||||
-rw-r--r-- | arch/arm/lib/bootm.c | 12 | ||||
-rw-r--r-- | arch/sandbox/cpu/start.c | 6 |
3 files changed, 12 insertions, 8 deletions
diff --git a/arch/arm/cpu/armv7/omap-common/spl_nand.c b/arch/arm/cpu/armv7/omap-common/spl_nand.c index 1295e88..8cf55c9 100644 --- a/arch/arm/cpu/armv7/omap-common/spl_nand.c +++ b/arch/arm/cpu/armv7/omap-common/spl_nand.c @@ -54,7 +54,7 @@ void spl_nand_load_image(void) * load parameter image * load to temp position since nand_spl_load_image reads * a whole block which is typically larger than - * CONFIG_CMD_SAVEBP_WRITE_SIZE therefore may overwrite + * CONFIG_CMD_SPL_WRITE_SIZE therefore may overwrite * following sections like BSS */ nand_spl_load_image(CONFIG_CMD_SPL_NAND_OFS, diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c index 1c1bee6..599547d 100644 --- a/arch/arm/lib/bootm.c +++ b/arch/arm/lib/bootm.c @@ -256,6 +256,7 @@ static int create_fdt(bootm_headers_t *images) fdt_chosen(*of_flat_tree, 1); fixup_memory_node(*of_flat_tree); + fdt_fixup_ethernet(*of_flat_tree); fdt_initrd(*of_flat_tree, *initrd_start, *initrd_end, 1); return 0; @@ -317,6 +318,7 @@ static void boot_jump_linux(bootm_headers_t *images) unsigned long machid = gd->bd->bi_arch_number; char *s; void (*kernel_entry)(int zero, int arch, uint params); + unsigned long r2; kernel_entry = (void (*)(int, int, uint))images->ep; @@ -330,7 +332,15 @@ static void boot_jump_linux(bootm_headers_t *images) "...\n", (ulong) kernel_entry); bootstage_mark(BOOTSTAGE_ID_RUN_OS); announce_and_cleanup(); - kernel_entry(0, machid, gd->bd->bi_boot_params); + +#ifdef CONFIG_OF_LIBFDT + if (images->ft_len) + r2 = (unsigned long)images->ft_addr; + else +#endif + r2 = gd->bd->bi_boot_params; + + kernel_entry(0, machid, r2); } /* Main Entry point for arm bootm implementation diff --git a/arch/sandbox/cpu/start.c b/arch/sandbox/cpu/start.c index 6c3e8eb..7603bf9 100644 --- a/arch/sandbox/cpu/start.c +++ b/arch/sandbox/cpu/start.c @@ -90,13 +90,7 @@ int sandbox_main_loop_init(void) /* Execute command if required */ if (state->cmd) { - /* TODO: redo this when cmd tidy-up series lands */ -#ifdef CONFIG_SYS_HUSH_PARSER run_command(state->cmd, 0); -#else - parse_string_outer(state->cmd, FLAG_PARSE_SEMICOLON | - FLAG_EXIT_FROM_LOOP); -#endif os_exit(state->exit_type); } |