提交 17239976 编写于 作者: S Stephen Warren 提交者: Wolfgang Denk

arm: fix bootm with device tree

Commit 0a672d49 "arm: Add Prep subcommand support to bootm" re-organized
do_bootm_linux() for ARM. During the re-organization, the code to pass
the device tree to the kernel was removed. Add it back. This restores
the ability to boot a kernel using device tree.
Signed-off-by: NStephen Warren <swarren@nvidia.com>
Acked-by: NTom Rini <trini@ti.com>
Acked-by: NAllen Martin <amartin@nvidia.com>
Tested-by: NAllen Martin <amartin@nvidia.com>
上级 030fca52
......@@ -317,6 +317,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 +331,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
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册