How to start barebox on Freescale iMX28 EVK
Sascha Hauer
s.hauer at pengutronix.de
Fri Jun 29 05:29:39 EDT 2012
On Fri, Jun 29, 2012 at 11:11:59AM +0200, Maxime Ripard wrote:
> Anyone ?
>
> Le 18/06/2012 15:07, Maxime Ripard a écrit :
> > Hi everyone,
> >
> > I'm trying barebox on the imx28 evk evaluation board from freescale, and
> > I can't get barebox to boot yet.
> >
> > I think I might have a problem with the bootlets used, but I'm not sure.
> >
> > So, to compile barebox, I did:
> > ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- make imx28evk_defconfig
> > ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- make
> >
> > Using codebench 2011.09 toolchain.
> >
> > Then, I used U-boot IVT bootlet from freescale bootlet tarball as a base
> > for the one I created [1].
> >
> > After that, I created the bootstream using
> > elftosb -z -f imx28 -c ./barebox_ivt.bd -o imx28_ivt_barebox.sb
> >
> > Finally, I pushed on a properly formatted SD Card (with a 0x53 partition
> > flag on the first partition) using Freescale mk_hdr script[2] to
> > generate the proper headers:
> >
> > ./mk_hdr.sh `sudo fdisk -lu /dev/sdb | awk '$5==53 {print $2}'` 1 >
> > temp.bin
> >
> > sudo dd if=temp.bin of=/dev/sdb1 ibs=512 conv=sync
> > sudo dd if=imx28_ivt_barebox.sb of=/dev/sdb1 ibs=512 obs=512 seek=1
> > conv=sync
> >
> > When I finally plug the card in and boot the card, the two first
> > bootlets are properly executed, and then, it hangs, displaying nothing
> > but what is looking like an address: 0x8050100f
This code comes from the i.MX28 ROM and means:
Requested data beyond the end of a section.
Maybe your entry point is wrong? I just had a look at our .bd file and
it looks like this:
sources {
power_prep="./power_prep/power_prep";
u_boot="/home/sha/dude/bosch/OSELAS.BSP-Bosch-SCM/platform-scm/build-target/barebox-2012.05.0/barebox";
}
section (0) {
//----------------------------------------------------------
// Power Supply initialization
//----------------------------------------------------------
load power_prep;
load ivt (entry = power_prep:_start) > 0x8000;
hab call 0x8000;
//----------------------------------------------------------
// Load and call u_boot - ELF ARM image
//----------------------------------------------------------
load u_boot;
load ivt (entry = u_boot:exception_vectors) > 0x8000;
hab call 0x8000;
}
--
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