[U-Boot] [PATCH V2 1/2] arm: fix bootm with device tree
Tom Warren
TWarren at nvidia.com
Fri Apr 20 00:58:52 CEST 2012
Stephen,
> -----Original Message-----
> From: Stephen Warren [mailto:swarren at wwwdotorg.org]
> Sent: Thursday, April 19, 2012 2:34 PM
> To: Wolfgang Denk; Tom Rini; Albert ARIBAUD
> Cc: Simon Schwarz; u-boot at lists.denx.de; Tom Warren; Stephen Warren
> Subject: [PATCH V2 1/2] arm: fix bootm with device tree
>
> From: Stephen Warren <swarren at nvidia.com>
>
> Commit 0a672d4 "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: Stephen Warren <swarren at nvidia.com>
> Acked-by: Tom Rini <trini at ti.com>
Acked-by: Tom Warren <twarren at nvidia.com>
Tested-by: Tom Warren <twarren at nvidia.com>
> ---
> v2: Fix a build warning
> ---
> arch/arm/lib/bootm.c | 11 ++++++++++-
> 1 files changed, 10 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c index
> 1c1bee6..cba457f 100644
> --- a/arch/arm/lib/bootm.c
> +++ b/arch/arm/lib/bootm.c
> @@ -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
> --
> 1.7.0.4
--
nvpublic
More information about the U-Boot
mailing list