Changes

The bootloader U-Boot

3,236 bytes added, 15:28, 24 May 2010
Created page with '== How to cross compile U-Boot == === Overview of How-To === This How-To is meant to be a starting point for people to learn build the u-boot software for IGEP v2 devices as qu…'
== How to cross compile U-Boot ==

=== Overview of How-To ===

This How-To is meant to be a starting point for people to learn build the u-boot software for IGEP v2 devices as quickly and easily as possible.

This How-To works with the Ubuntu 8.04 IGEP v2.0 SDK Virtual Machine but most of the contents are valid also for other GNU/Linux distributions. We do not issue any guarantee that this will work on other distributions.

=== Requirements ===

*'''Ubuntu 8.04 IGEP v2.0 SDK Virtual Machine'''

=== Feedback and Contributing ===

At any point, if you see a mistake you can contribute to this How-To.

=== U-Boot for IGEP v2 ===

First of all setup the build environment sourcing this script
<pre>
$ source /usr/local/poky/eabi-glibc/arm/environment-setup
</pre>
or
<pre>
$ source /usr/local/poky/eabi-glibc/environment-setup-arm-none-linux-gnueabi
</pre>
if you have updated your SDK environment to latest version (see [[Ubuntu804IGEPv20SDKVirtualMachine|Ubuntu 8.04 IGEP v2.0 SDK Virtual Machine]])

==== U-Boot v2009.11 (stable) ====

This version support full OneNAND DDP

Download the IGEP v2 U-Boot sources and follow next steps:
<pre>
$ wget http://www.igep.es/downloads/01-ISEE_Products/IGEPv2/SW_Releases/sources/u-boot-arm-2009.11-1.tar.gz
$ tar xzf u-boot-arm-2009.11-0.tar.gz
$ cd u-boot-arm-2009.11-0
$ make CROSS_COMPILE=arm-none-linux-gnueabi- omap3_igep0020_config
$ make CROSS_COMPILE=arm-none-linux-gnueabi-
</pre>
The result will be an u-boot.bin file in arch/arm/boot directory.

==== U-Boot mainline tree (development) ====

Clone the GIT repository from git.myigep.com
<pre>
$ git clone git://git.igep.es/pub/scm/u-boot-arm.git
$ cd u-boot-arm
$ git checkout origin/u-boot-2009.11.y -b u-boot-2009.11.y
</pre>
and build with
<pre>
$ make CROSS_COMPILE=arm-none-linux-gnueabi- omap3_igep0020b_config
$ make CROSS_COMPILE=arm-none-linux-gnueabi-
</pre>
The result will be an u-boot.bin file in arch/arm/boot directory.

=== Annex: default u-boot environment ===

<pre>
setenv distro poky
setenv machine igep0020
setenv project poky-image-sato
setenv ethaddr ac:de:48:00:02:54
setenv ipaddr 192.168.254.254
setenv netmask 255.255.255.0
setenv gatewayip 192.168.254.10
setenv serverip 192.168.254.10
setenv addip 'setenv bootargs ${bootargs} ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}::eth0:'
setenv bootargs-base 'mem=512M console=ttyS2,115200n8 console=tty0 omapfb.mode=dvi:1024x768MR-16@60'
setenv mmc-bootargs 'setenv bootargs ${bootargs-base} root=/dev/mmcblk0p2 rw rootwait'
setenv mmc-boot 'mmc init 0; if fatload mmc 0 80000000 boot.ini; then source; else if fatload mmc 0 80000000 uImage; then run mmc-bootargs; bootm; fi; fi'
setenv onenand-bootargs 'setenv bootargs ${bootargs-base} root=/dev/mtdblock4 rootfstype=jffs2 ; run addip'
setenv onenand-boot 'run onenand-bootargs; onenand read 80000000 280000 400000 ; bootm 80000000'
setenv nfs-bootargs 'setenv bootargs ${bootargs-base} root=/dev/nfs nfsroot=${serverip}:/srv/nfs/${distro}/${project}/${machine} ; run addip'
setenv nfs-boot 'if ping ${serverip}; then run nfs-bootargs; tftp 0x80000000 ${distro}/${project}/${machine}/uImage; bootm; fi;'
setenv bootcmd 'run mmc-boot; run nfs-boot; run onenand-boot'
</pre>

--- That's all folks ---
0
edits