N900 v3.19-rc5 arm atags_to_fdt.c is broken
Tony Lindgren
tony at atomide.com
Mon Jan 26 08:14:55 PST 2015
* Pali Rohár <pali.rohar at gmail.com> [150123 14:39]:
> On Friday 23 January 2015 22:39:55 Pali Rohár wrote:
> > Hello,
> >
> > when I boot zImage with appended DT n900 in qemu
> > fdt_open_into() function called from file
> > arch/arm/boot/compressed/atags_to_fdt.c (in function
> > atags_to_fdt) always returns -FDT_ERR_NOSPACE.
> >
> > It means that all ATAGS (including cmdline arguments) passed
> > by bootloader are ignored.
> >
> > On real n900 device I see that booted DT version also ignore
> > cmdline arguments from bootloader. I cannot debug decompress
> > code on real device, but I think it is same problem as in
> > qemu.
>
> Looks like this quick patch is fixing above problem:
>
> diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S
> index 68be901..4a7d75b 100644
> --- a/arch/arm/boot/compressed/head.S
> +++ b/arch/arm/boot/compressed/head.S
> @@ -268,7 +268,7 @@ restart: adr r0, LC0
> * area. No GOT fixup has occurred yet, but none of the
> * code we're about to call uses any global variable.
> */
> - add sp, sp, #0x10000
> + add sp, sp, #0x20000
> stmfd sp!, {r0-r3, ip, lr}
> mov r0, r8
> mov r1, r6
> @@ -289,7 +289,7 @@ restart: adr r0, LC0
> bleq atags_to_fdt
>
> ldmfd sp!, {r0-r3, ip, lr}
> - sub sp, sp, #0x10000
> + sub sp, sp, #0x20000
> #endif
>
> mov r8, r6 @ use the appended device tree
Nico, got any ideas about this one? This seems like a regression
somewhere..
Regards,
Tony
More information about the linux-arm-kernel
mailing list