Personal tools

Log in

Changes

From IGEP - ISEE Wiki

Jump to: navigation, search

The IGEP X-loader

425 bytes removed, 14:21, 3 March 2011
no edit summary
<pre>sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- modules_install INSTALL_MOD_PATH=[path to your target rootfs]
</pre>
== OneNand Boot ==
=== OneNand Partitions<br> ===
We suggest use minimum 3 partitions on the OneNand.
<pre>MTD partitions on "omap2-onenand":
(a) 0x000000000000-0x000000080000 &nbsp;: "X-Loader"(b) 0x000000080000-0x000000c80000 &nbsp;: "Boot"(c) 0x000000c80000-0x000020000000 &nbsp;: "File System"</pre> ==== X-Loader Partition ==== *Not fs formated (onenand raw) *Suggested size: 0x80000 (512 KiB) *The xloader must be signed before copy it into the flash memory. You should copy the x-loader in the firsts 4 blocks (first 512 KiB), this is not a&nbsp;formated partition due the ROM not permits boot from a formated partition in flash, you should use flash_eraseall and nandwrite for copy x-loader in the first blocks.<pre><u>Suggested procedure:</u>Erase and copy the x-loader into the first flash partition:$nand_eraseall /dev/mtd0$nandwrite -p /dev/mtd0 &lt;x-loader&gt; Sign x-loader:You should execute contrib/signGP for sign the xloader that resides inside the flash memory.contrib/signGP x-load.binThe signed x-loader it's named: x-load.bin.ift Due the Onenand 512 MiB has two dies it's necessary split the x-loader and convert it to a 1 die binary.This is a know OMAP/DM/AM OneNand/Nand boot limitation. This is the procedure for create the x-loader OneNand binary:You should execute: (You can use copy paste in your console)split -b 2K x-load.bin.ift split-for file in `ls split-a?`; do cat $file &gt;&gt; x-load-ddp.bin.ift; cat $file &gt;&gt; x-load-ddp.bin.ift; done This last command generate a file named x-load-ddp.bin.ift this is the x-loader for copy it in the OneNand.</pre>==== <span style="display: none; " id="1299156619608S">&nbsp;</span>Boot Partition ==== *fs used jffs2 zlib compressed filesystem.*Suggested size: 0xC00000 (12 MiB). X-Loader only support jffs2 partitions for boot partition. <u>Prepare the boot partition for the first use:</u> <u></u>You should follow the same procedure used for copy the x-loader in the first partition.<pre>Suggested procedure:Erase and copy the x-loader into the first flash partition:$nand_eraseall /dev/mtd0$nandwrite -p /dev/mtd0 &lt;your_boot_initial_jffs2_file&gt;  Your initial boot partition can be a empty file the first time.
</pre>
<u>Next uses:</u> <u></u>You can mount the partition over your boot directory in the rootfs <pre>$mount /dev/mtdblck1 /boot</pre>And you can use the cp command for copy your kernel and igep.ini configuration file.<pre>$cp igep.ini /boot</pre>==== X-Loader Rootfs Partition ==== *fs (your prefered fs supported by linux, maybe a good choice it should be ubifs)*Size, all or you can create more partitions if you wish ... :) == Boot Priority == XLoader first try load from mmc and if it fails then try from OneNand.<br>
*Not fs formated '''MLO (onenand rawx-loader)*Suggested size: 0x80000 (512 KiB)*The xloader must be signed before copy , igep.ini, zImage from MMC'''<br>If all it 's present in the flash memorymmc it don't try to boot from Onenand.****You should copy the x-loader in the firsts 4 blocks (first 512 KiB), this is not a&nbsp;*<br>
'''MLO (x-loader) in MMC, igep.ini and zImage in Onenand.'''<br>If only MLO it's provided this one try to load the other information from&nbsp;the Onenand.
*<span style="display: none; " id="1299156417262E">&nbsp;</span>formated partition due the ROM not permits boot from there, you should use tools:<br>flash_eraseall and nandwrite for copy x-loader in the first blocks.<br>Suggested procedure:<br>nand_eraseall /dev/mtd0<br>nandwrite -p /dev/mtd0 &lt;x-loader&gt;<br>Sign x-loader<br>You should execute contrib/signGP for sign the xloader It means that resides inside the flash memory.<br>contrib/signGP x-XLoader always try to load.bin <br>The signed x-loader it's named: x-load.bin.ift<br>Due the Onenand 512 MiB has two dies it's necessary split the x-loader information from MMC and convert if it fails then try to a 1 die binary.<br>This is a know OMAP/DM/AM OneNand/Nand boot limitation.<br>This is the procedure for create the x-loader OneNand binary:<br>You should execute: (You can use copy paste in your console)<br>split -b 2K x-load.bin.ift split-<br>for file in `ls split-a?`; do cat $file &gt;&gt; x-load-ddp.bin.ift; cat $file &gt;&gt; x-load-ddp.bin.ift; done<br>This last command generate a file named x-load-ddp.bin.ift this is the x-loader for copy it in the from OneNand.
-------------------------------<br>4.4.1) Xloader partition<br>* Not fs formated (raw)<br>* Suggested size: 0x80000 (512 KiB)<br>* The xloader must be signed before copy it in the flash memory.<br>You should copy the x-loader in the firsts 4 blocks (first 512 KiB), this is not a <br>formated partition due the ROM not permits boot from there, you should use tools:<br>flash_eraseall and nandwrite for copy x-loader in the first blocks.<br>Suggested procedure:<br>nand_eraseall /dev/mtd0<br>nandwrite -p /dev/mtd0 &lt;x-loader&gt;<br>Sign x-loader<br>You should execute contrib/signGP for sign the xloader that resides inside the flash memory.<br>contrib/signGP x-load.bin <br>The signed x-loader it's named: x-load.bin.ift<br>Due the Onenand 512 MiB has two dies it's necessary split the x-loader and convert it to a 1 die binary.<br>This is a know OMAP/DM/AM OneNand/Nand boot limitation.<br>This is the procedure for create the x-loader OneNand binary:<br>You should execute: (You can use copy paste in your console)<br>split -b 2K x-load.bin.ift split-<br>for file in `ls split-a?`; do cat $file &gt;&gt; x-load-ddp.bin.ift; cat $file &gt;&gt; x-load-ddp.bin.ift; done<br>This last command generate a file named x-load-ddp.bin.ift this is the x-loader for copy it in the OneNand.<br>4.4.2 Boot Partition<br>--------------------<br>* fs used jffs2 zlib compressed filesystem.<br>* Suggested size: 0xC00000 (12 MiB)<br>First time creation:<br>a) Use the same procedure described in point 4.2.1. Copy your jffs2 compressed image in the<br>partition, it can be a empty file.<br>b) Erase the partition and mount it as jffs2 filesystem then you can copy with cp command.<br>Next Times:<br>Copy the files using cp command, or edit directly.<br>when kernel boots you can enable mount this partition over /boot directory for access all boot content.<br>4.4.3 Rootfs <br>------------<br>* fs (your prefered fs supported by linux, maybe a good choice it should be ubifs)<br>* Size, all or you can create more partitions if you wish ... :)<br>
=== ===
d) Sign x-loader<br>You should execute contrib/signGP for sign the xloader that resides inside the flash memory.<br>contrib/signGP x-load.bin <br>The signed x-loader it's named: x-load.bin.ift
<br>6 Contribution &amp; Support &amp; Report Bugs<br>======================================<br>Contributions to this project be welcome and you can send your patches to support@iseebcn.com<br>or you can use the igep forum for it.<br>You can access to IGEP-x-Loader repository using our git at git.igep.es<br>IGEP IRC Channel: http://webchat.freenode.net/?channels=igep<br><span style="display: none; " id="1299156619619E">&nbsp;</span><br>