Personal tools

Log in

Changes

From IGEP - ISEE Wiki

Jump to: navigation, search

IGEPv2 Ubuntu Distro flash

87 bytes added, 16:54, 9 June 2014
no edit summary
= <span style="color: rgb(255, 0, 0);">WORKING PROGRESS</span> =
How to get the Ubuntu 12.04.4 LTS in the Nand Flash Memory <br> The Ubuntu project is excited to be working with the ARM ecosystem to port Ubuntu for ARM-based devices. This work fits with our goals of making Ubuntu available as an open platform to as many people as possible.
== Prerequisites ==
First you need follow the[[IGEPv2 Ubuntu Distro|IGEPv2 Ubuntu Distribution]] howto and boot the IGEPv2 / IGEP COM Module / IGEP COM Proton using the Ubuntu distribution described in the howto.
== Where are the Nand Flash partitions? ==
== Erase the partitions ==
 It's very important erase the partitions before try to write anything into the flash memory.We will erase all NAND partitions using these commands: <pre>$ flash_eraseall /dev/mdt0
$ flash_eraseall /dev/mtd1
$ flash_eraseall /dev/mtd2
</pre> 
== Install the Bootloader ==
Download the writeloader binary package from [http://downloads.isee.biz/pub/distros/ubuntu/isee-writeloader-bin-armel_0.01_armel.deb here] ARMEL version or from [http://downloads.isee.biz/pub/distros/ubuntu/isee-writeloader-bin-armhf_0.01_armhf.deb here] if you are using hard float version.
After download the appropiate package we're ready for install the bootloader in the internal flash ARMEL version <pre>$ writeloader-armel -i /boot/MLO -o /dev/mtd0</pre> ARM Hard float version
ARMEL version <pre>$ writeloader-armel -i /boot/MLO -o /dev/mtd0</pre> ARM Hard float version <pre>$ writeloader-armhf -i /boot/MLO -o /dev/mtd0</pre>== Install the kernel (first boot) ==
== Install the kernel (first boot) ==We must create a jffs2 partition for the boot device, we will use this command:<pre>$ mount -t jffs2 /dev/mtdblock1 /mnt</pre>Now we can copy the boot content inside as
<pre>$ cd /mnt
$ cp /boot/igep.ini .
$ cp /boot/zImage .
</pre>and after that we can unmount the device as
<pre>$ cd ..
$ umount /mnt</pre>Now we will edit the file igep.ini (using nano) due we must specify the root boot partition.<br>Find inside the file any line similar to this one and comment it:; --- Configure MMC boot ---Change:<pre>root=/dev/mmcblk0p2 rw rootwait</pre>to<pre>;root=/dev/mmcblk0p2 rw rootwait</pre>And now we will activate the rootfs as ubi, you should locate these commented lines:
; --- Configure MMC boot --- Change: <pre>root=/dev/mmcblk0p2 rw rootwait</pre> to <pre>;root=/dev/mmcblk0p2 rw rootwait</pre> And now we will activate the rootfs as ubi, you should locate these commented lines:  ;--- Configure UBI FS boot ---<pre>;ubi.mtd=2
;root=ubi0:igep0020-rootfs
;rootfstype=ubifs</pre>And uncomment the three lines as:<pre>ubi.mtd=2
root=ubi0:igep0020-rootfs
rootfstype=ubifs</pre> At leatest save the file.
== Install the Rootfs (Using Ubi filesystem) ==
c) Create the ubi volume
<pre>$ ubimkvol /dev/ubi0 -N rootfs -s 486MiB</pre>
d) Download the [http://downloads.isee.biz/pub/distros/ubuntu/ubuntu-12.04.04-lts-isee-igep00x0-20140606-armel.ubi.img ubi ubuntu image]
This image is generated using this command:<pre>$ mkfs.ubifs -r ubuntu-12.04.04-lts-isee-igep00x0-armel/ -m 2048 -e 129024 -c 4044 -o ubuntu-12.04.04-lts-isee-igep00x0-20140606-armel.ubi.img</pre>Where:
ubuntu-12.04.04-lts-isee-igep00x0-armel: Is the rootfs uncompressed directory<br>
ubuntu-12.04.04-lts-isee-igep00x0-20140606-armel.ubi.img &nbsp;: Is the ubi generated image<br>
e) Copy the ubi ubuntu image inside your boardYou can use ssh (the image has a openssh server installed) or you can install wget tool and download the image directly.
f) Install the ubi ubuntu image<pre>$ ubiupdatevol /dev/ubi0_0 /root/ubuntu-12.04.04-lts-isee-igep00x0-20140606-armel.ubi.img</pre> g) Mount the ubi partition and verify the content
<pre>$ mount -t ubifs ubi0:rootfs /mnt/
$ls -al
drwxr-xr-x 10 root root 672 Jun 3 15:02 usr
drwxr-xr-x 11 root root 864 Jun 3 15:02 var
</pre> == Boot from Flash (first time) ==Unplug the power cord and eject the microsd card then plug the power cord again.During the reboot process the console will show you this message:
Unplug the power cord and eject the microsd card then plug the power cord again. During the reboot process the console will show you this message:
<pre>The disk drive for /boot is not ready yet or not present.
Continue to wait, or Press S to skip mounting or M for manual recovery</pre>We will skip the /boot mount at this time (press 's') and the boot process will continue showing:<pre>Skipping /boot at user request
modprobe: FATAL: Could not load /lib/modules/2.6.37/modules.dep: No such file or directory
igep00x0 login:
</pre>Use the same root password ("letmein" - is the default) After login edit the file: /etc/fstab and change this line: <pre>LABEL="boot" /boot vfat defaults 0 0</pre> to <pre>/dev/mtdblock1 /boot jffs2 defaults 0 0</pre> Save the file.  Mount manually the boot partition with this command: <pre>$ mount -t jffs2 /dev/mtdblock1 /boot </pre> After mount the boot partition go to /root/packages and install the kernel with: <pre>$ dpkg -i linux-image-2.6.37_0009.isee_armel.deb</pre> and after that install the wifi firmware with <pre>$ dpkg -i igep-fw-wifi-marvell-8686_0.1_all.deb</pre> At leatest go to /boot directory and copy the file vmlinuz-2.6.37 as zImage $ cd /boot $ cp vmlinuz-2.6.37 zImage
After login edit And Reboot the file:/etc/fstab and change this line:<pre>LABEL="boot" /boot vfat defaults 0 0</pre>to<pre>/dev/mtdblock1 /boot jffs2 defaults 0 0</pre>Save the fileboard.
Mount manually the boot partition with this command:
<pre>$ mount -t jffs2 /dev/mtdblock1 /boot </pre>
After mount the boot partition go to /root/packages and install the kernel with:
<pre>$ dpkg -i linux-image-2.6.37_0009.isee_armel.deb</pre>
and after that install the wifi firmware with
<pre>$ dpkg -i igep-fw-wifi-marvell-8686_0.1_all.deb</pre>
At leatest go to /boot directory and copy the file vmlinuz-2.6.37 as zImage
$ cd /boot
$ cp vmlinuz-2.6.37 zImage
And Reboot the board[[Category:Ubuntu]][[Category:IGEPv2]]