diff mbox

[U-Boot,1/2] arm: fix bootm with device tree

Message ID 1334869789-32052-1-git-send-email-swarren@wwwdotorg.org
State Superseded
Headers show

Commit Message

Stephen Warren April 19, 2012, 9:09 p.m. UTC
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>
---
 arch/arm/lib/bootm.c |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

Comments

Tom Rini April 19, 2012, 9:30 p.m. UTC | #1
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>
Stephen Warren April 20, 2012, 8:42 p.m. UTC | #2
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?
Tom Rini April 20, 2012, 8:52 p.m. UTC | #3
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.
Tom Rini April 20, 2012, 10:13 p.m. UTC | #4
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 mbox

Patch

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