Message ID | 1334869789-32052-1-git-send-email-swarren@wwwdotorg.org |
---|---|
State | Superseded |
Headers | show |
On 04/19/2012 02:09 PM, Stephen Warren wrote: > From: Stephen Warren<swarren@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@nvidia.com> Acked-by: Tom Rini <trini@ti.com>
On 04/19/2012 03:30 PM, Tom Rini wrote: > On 04/19/2012 02:09 PM, Stephen Warren wrote: >> From: Stephen Warren<swarren@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@nvidia.com> > > Acked-by: Tom Rini <trini@ti.com> Who's going to take this patch through their tree? Is it Albert or Wolfgang directly, or should I ask Tom Warren to do it through the Tegra tree?
On Fri, Apr 20, 2012 at 02:42:26PM -0600, Stephen Warren wrote: > On 04/19/2012 03:30 PM, Tom Rini wrote: > > On 04/19/2012 02:09 PM, Stephen Warren wrote: > >> From: Stephen Warren<swarren@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@nvidia.com> > > > > Acked-by: Tom Rini <trini@ti.com> > > Who's going to take this patch through their tree? Is it Albert or > Wolfgang directly, or should I ask Tom Warren to do it through the Tegra > tree? I would suggest Wolfgang directly.
On Fri, Apr 20, 2012 at 02:29:15PM -0700, Tom Warren wrote: > > > > -----Original Message----- > > From: Tom Rini [mailto:tom.rini@gmail.com] On Behalf Of Tom Rini > > Sent: Friday, April 20, 2012 1:53 PM > > To: Stephen Warren; Wolfgang Denk > > Cc: Simon Schwarz; u-boot@lists.denx.de; Tom Warren > > Subject: Re: [U-Boot] [PATCH 1/2] arm: fix bootm with device tree > > > > * PGP Signed by an unknown key > > > > On Fri, Apr 20, 2012 at 02:42:26PM -0600, Stephen Warren wrote: > > > On 04/19/2012 03:30 PM, Tom Rini wrote: > > > > On 04/19/2012 02:09 PM, Stephen Warren wrote: > > > >> From: Stephen Warren<swarren@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@nvidia.com> > > > > > > > > Acked-by: Tom Rini <trini@ti.com> > > > > > > Who's going to take this patch through their tree? Is it Albert or > > > Wolfgang directly, or should I ask Tom Warren to do it through the > > > Tegra tree? > > > > I would suggest Wolfgang directly. > > I have it in my u-boot-tegra/next branch on denx right now, just so I can test kernel boot. > It's arch/arm/lib/bootm.c, though, so shouldn't it go thru Albert's tree? It's a relatively obvious fix (since it restores code that was removed by accident). And since Wolfgang wants to release tomorrow, I think it's reasonable to just have this go in, unless Albert snags this and sends off a PR right away. :)
diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c index 1c1bee6..95e596a 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 = images->ft_addr; + else +#endif + r2 = gd->bd->bi_boot_params; + + kernel_entry(0, machid, r2); } /* Main Entry point for arm bootm implementation