Failed to launch barebox from flash memory on i.MX35
Sascha Hauer
s.hauer at pengutronix.de
Wed Nov 2 10:49:32 EDT 2011
On Wed, Nov 02, 2011 at 03:04:26PM +0100, Peter Kuennemann at Crane-Soft wrote:
>
> Am 02.11.2011 11:16, schrieb Sascha Hauer:
> >>
> >> I am completly stuck. What went wrong?
> >> Any help will be very much appreciated.
> > There seems to be a bug in the pcm043_defconfig. It is configured for
> > internal bootmode, which means that the board has to specify a header
> > of size 0x2000 before the actual image. The pcm043 does not specify this
> > header as it uses the external bootmode.
> > Please disable CONFIG_ARCH_IMX_INTERNAL_BOOT in your config, that should
> > do it. If it works I'll commit a corresponding patch.
> >
> > Sascha
> >
> Thanks, that did the trick. I changed the option "support internal boot mode" to
> "support external boot mode" (What ever that means) and the relocation works
> pretty well now.
It's described in the i.MX datasheet. Internal bootmode means that after
reset the internal ROM is executed which parses a header in flash or on
a SD Card. The header describes how to setup memory, where to load the
image and so on. In external bootmode the i.MX simply executes the code
in NOR flash after reset.
>
> Nevertheless, next problem appears right after relocation. The console displays the
> welcome messages: "barebox 2011.10.0 (Nov 2 2011 - 14:40:11)" and
> "Board: Phytec phyCORE-i.MX35" but then loops in mmu.c at function mmu_init
> in the for () loop at line 237 .. forever!
Strange. I just flashed a pcm043 with v2011.10.0 pcm043_defconfig +
external bootmode and it works for me. As you have printf available can
you put something like this into the loop?
printf("0x%08x 0x%08x\n", mem->start, mem->size)
Sascha
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list