Difference between revisions of "The bootloader X-loader"

From IGEP - ISEE Wiki

Jump to: navigation, search
(X-loader for IGEP v2)
m (X-loader v1.4.4-3 (stable))
 
(23 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== How to cross compile X-loader ==
+
= X-loader for IGEP platforms =
 
 
=== Overview of How-To ===
 
 
 
This How-To is meant to be a starting point for people to learn build the x-loader 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.
 
 
 
=== X-loader for IGEP v2 ===
 
  
 
First of all setup the build environment sourcing this script
 
First of all setup the build environment sourcing this script
Line 26: Line 11:
 
if you have updated your SDK environment to latest version (see [[Ubuntu 8.04 IGEP v2.0 SDK Virtual Machine]])
 
if you have updated your SDK environment to latest version (see [[Ubuntu 8.04 IGEP v2.0 SDK Virtual Machine]])
  
==== X-loader v1.4.2-2 (stable) ====
+
= X-loader v1.4.4-3 (stable) =
  
This version supports full OneNAND DDP
+
Download the IGEP X-loader sources and follow next steps:
 +
 
 +
{{Message/Broken Links}}
 +
 
 +
$ wget http://downloads.igep.es/sources/x-loader-1.4.4-3.tar.gz
 +
$ tar xzf x-loader-1.4.4-3.tar.gz
 +
$ cd x-loader-1.4.4-3
 +
$ scripts/./autobuild.sh arm-none-linux-gnueabi-
 +
 
 +
The result will be :
 +
* For IGEP v2 platform
 +
**x-load-ddp.bin.ift in autobuild/igep0020/flash directory (for OneNAND DDP)
 +
**x-load.bin.ift in autobuild/igep0020/sdcard directory (for SD card)
 +
*For OMAP3 IGEP module
 +
**x-load-ddp.bin.ift in autobuild/igep0030/flash directory (for OneNAND DDP)
 +
**x-load.bin.ift in autobuild/igep0030/sdcard directory (for SD card)
 +
 
 +
= X-loader development  =
 +
 
 +
<span style="color: rgb(255, 0, 0);">'''Note:''' The 'master' branch is where the development work takes place and you should use this if you're after to work with the latest cutting edge developments. It is possible trunk can suffer temporary periods of instability while new features are developed and if this is undesirable we recommend using one of the release branches. '''Use ONLY for development purposes.'''</span>
 +
 
 +
Clone the GIT repository from git.igep.es
 +
$ git clone git://git.igep.es/pub/scm/x-loader.git
 +
$ cd x-loader
 +
$ git checkout origin/for-next -b for-next
 +
 
 +
and build with
 +
$ cd x-loader
 +
$ make CROSS_COMPILE=arm-none-linux-gnueabi- igep00x0_config
 +
$ make CROSS_COMPILE=arm-none-linux-gnueabi-
  
Download the IGEP v2 X-loader sources and follow next steps:
 
<pre>
 
$ wget http://www.igep.es/downloads/01-ISEE_Products/IGEPv2/SW_Releases/sources/x-loader-1.4.2-2.tar.gz
 
$ tar xzf x-loader-1.4.2-2.tar.gz
 
$ cd x-loader-1.4.2-2
 
$ scripts/./autobuild.sh arm-none-linux-gnueabi-
 
</pre>
 
 
The result will be :
 
The result will be :
*x-load-ddp.bin.ift in autobuild/igep0020/flash directory (for OneNAND DDP)
+
* x-load.bin.ift in ./ directory
*x-load.bin.ift in autobuild/igep0020/sdcard directory (for SD card)
+
 
 +
= Quality assurance: Test Cases =
 +
 
 +
== Status table ==
 +
 
 +
== Test case definitions ==
 +
 
 +
''' #001 : SDCARD boot '''
 +
 
 +
How to test: Put x-loader to sdcard and check if booting. Result should be like :
 +
 
 +
Texas Instruments X-Loader 1.5.0 (May  5 2011 - 09:59:19)
 +
Reading boot sector
 +
u-boot.bin not found or blank nand contents - attempting serial boot . . .
 +
## Ready for binary (kermit) download to 0x80008000 at 115200 bps...
 +
 
 +
''' #002 : Load u-boot from SD-card '''
  
==== X-loader mainline tree (development) ====
+
How to test: Put x-loader and u-boot to SD-card and check if booting. Result should be like :
  
Clone the GIT repository from git.myigep.com
 
 
<pre>
 
<pre>
$ git clone git://git.igep.es/pub/scm/x-loader.git
+
Texas Instruments X-Loader 1.5.0 (May  5 2011 - 09:59:19)
$ cd x-loader
+
Reading boot sector
 +
Loading u-boot.bin from mmc
 +
 
 +
U-Boot 2011.03-00406-gf92edd8 (May 05 2011 - 13:01:04)
 
</pre>
 
</pre>
and build with
+
 
 +
''' #003 : ONENAND boot '''
 +
 
 +
How to test: Put x-loader to onenand and check if booting. Result should be like :
 +
 
 +
Texas Instruments X-Loader 1.5.0 (May  5 2011 - 09:59:19)
 +
u-boot.bin not found or blank nand contents - attempting serial boot . . .
 +
## Ready for binary (kermit) download to 0x80008000 at 115200 bps...
 +
 
 +
Script : flash x-loader using u-boot
 +
 
 +
mmc rescan 0
 +
fatload mmc 0:1 0x80300000 mlo
 +
onenand erase 0 0x80000
 +
onenand write 0x80300000 0 0x80000
 +
 
 +
''' #004 : Load u-boot from onenand '''
 +
 
 +
How to test: Put x-loader and u-boot to SD-card and check if booting. Result should be like :
 +
 
 
<pre>
 
<pre>
$ cd x-loader
+
Texas Instruments X-Loader 1.5.0 (May 19 2011 - 10:47:12)
$ scripts/./autobuild.sh arm-none-linux-gnueabi-
+
Detected Numonyx OneNAND 4G Flash
 +
Loading u-boot.bin from onenand
 +
 
 +
U-Boot 2011.03-00532-g638a48e (May 19 2011 - 11:43:43)
 
</pre>
 
</pre>
The result will be :
 
*x-load-ddp.bin.ift in autobuild/igep0020b/flash directory (for OneNAND DDP)
 
*x-load.bin.ift in autobuild/igep0020b/sdcard directory (for SD card)
 
  
[[Category:Software|Xloader]]
+
Script : flash u-boot using u-boot
 +
 
 +
mmc rescan 0
 +
fatload mmc 0 0x80300000 u-boot.bin
 +
onenand erase 0x80000 0x180000
 +
onenand write 0x80300000 0x80000 0x180000
 +
 
 +
= Changelog =
 +
* [http://git.igep.es/?p=pub/scm/x-loader.git;a=commit;h=7a4eb1c5c2a6f2c83927c7a09a335481dc054d70 2011-07-29 Release 1.4.4-3]
 +
** fix build with linaro toolchain
 +
* [http://git.igep.es/?p=pub/scm/x-loader.git;a=commit;h=5a8ddfa826ee447853c27f14dc437dd81e2c52a5 2011-03-07 Release 1.4.4-2]
 +
** improve clk frequency selection
 +
* [http://git.igep.es/?p=pub/scm/x-loader.git;a=commit;h=0aad3f949c55196491721129d73261ac6bcca120 2010-11-08 Release 1.4.4-1]
 +
** improve led management
 +
* [http://git.igep.es/?p=pub/scm/x-loader.git;a=commit;h=63815b693325970f3fddbb197af67cd6d439aee7 2010-10-12 Release 1.4.4-0]
 +
** add support for DM3730
 +
* [http://git.igep.es/?p=pub/scm/x-loader.git;a=commit;h=88e476f71ddb4f9bee833b4da4b05fd883284d5c 2010-06-15 Release 1.4.3-0]
 +
** add watchdog support
 +
** add support for the 128MB SDRAM
 +
** add support for OMAP3 IGEP module (igep0030)
 +
 
 +
[[Category:Boot loaders|Xloader]]

Latest revision as of 13:20, 14 May 2012

X-loader for IGEP platforms

First of all setup the build environment sourcing this script

$ source /usr/local/poky/eabi-glibc/arm/environment-setup

or

$ source /usr/local/poky/eabi-glibc/environment-setup-arm-none-linux-gnueabi

if you have updated your SDK environment to latest version (see Ubuntu 8.04 IGEP v2.0 SDK Virtual Machine)

X-loader v1.4.4-3 (stable)

Download the IGEP X-loader sources and follow next steps:

Warning icon.png A user reported that this page might contain some broken, wrong or missing links to external pages.

Thank you for your patience as it is being fixed.

$ wget http://downloads.igep.es/sources/x-loader-1.4.4-3.tar.gz
$ tar xzf x-loader-1.4.4-3.tar.gz
$ cd x-loader-1.4.4-3
$ scripts/./autobuild.sh arm-none-linux-gnueabi-

The result will be :

  • For IGEP v2 platform
    • x-load-ddp.bin.ift in autobuild/igep0020/flash directory (for OneNAND DDP)
    • x-load.bin.ift in autobuild/igep0020/sdcard directory (for SD card)
  • For OMAP3 IGEP module
    • x-load-ddp.bin.ift in autobuild/igep0030/flash directory (for OneNAND DDP)
    • x-load.bin.ift in autobuild/igep0030/sdcard directory (for SD card)

X-loader development

Note: The 'master' branch is where the development work takes place and you should use this if you're after to work with the latest cutting edge developments. It is possible trunk can suffer temporary periods of instability while new features are developed and if this is undesirable we recommend using one of the release branches. Use ONLY for development purposes.

Clone the GIT repository from git.igep.es

$ git clone git://git.igep.es/pub/scm/x-loader.git
$ cd x-loader
$ git checkout origin/for-next -b for-next

and build with

$ cd x-loader
$ make CROSS_COMPILE=arm-none-linux-gnueabi- igep00x0_config 
$ make CROSS_COMPILE=arm-none-linux-gnueabi-

The result will be :

  • x-load.bin.ift in ./ directory

Quality assurance: Test Cases

Status table

Test case definitions

#001 : SDCARD boot

How to test: Put x-loader to sdcard and check if booting. Result should be like :

Texas Instruments X-Loader 1.5.0 (May  5 2011 - 09:59:19)
Reading boot sector
u-boot.bin not found or blank nand contents - attempting serial boot . . .
## Ready for binary (kermit) download to 0x80008000 at 115200 bps...

#002 : Load u-boot from SD-card

How to test: Put x-loader and u-boot to SD-card and check if booting. Result should be like :

 Texas Instruments X-Loader 1.5.0 (May  5 2011 - 09:59:19)
 Reading boot sector
 Loading u-boot.bin from mmc

 U-Boot 2011.03-00406-gf92edd8 (May 05 2011 - 13:01:04)

#003 : ONENAND boot

How to test: Put x-loader to onenand and check if booting. Result should be like :

Texas Instruments X-Loader 1.5.0 (May  5 2011 - 09:59:19)
u-boot.bin not found or blank nand contents - attempting serial boot . . .
## Ready for binary (kermit) download to 0x80008000 at 115200 bps...

Script : flash x-loader using u-boot

mmc rescan 0
fatload mmc 0:1 0x80300000 mlo
onenand erase 0 0x80000
onenand write 0x80300000 0 0x80000

#004 : Load u-boot from onenand

How to test: Put x-loader and u-boot to SD-card and check if booting. Result should be like :

 Texas Instruments X-Loader 1.5.0 (May 19 2011 - 10:47:12)
 Detected Numonyx OneNAND 4G Flash
 Loading u-boot.bin from onenand

 U-Boot 2011.03-00532-g638a48e (May 19 2011 - 11:43:43)

Script : flash u-boot using u-boot

mmc rescan 0
fatload mmc 0 0x80300000 u-boot.bin
onenand erase 0x80000 0x180000
onenand write 0x80300000 0x80000 0x180000

Changelog