1,381
edits
Changes
From IGEP - ISEE Wiki
no edit summary
== How to get the Ubuntu distribution == 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. Some points to note: == Overview of How-To ==
==Overview of How-To==
This How-To is meant to be a starting point for people to learn install an Ubuntu image for OMAP3-based IGEP platforms as quickly and easily as possible.
== Requirements == *A SD card at least 2GB ( recommended 4GB ) == Feedback and Contributing ==
==Ubuntu releases==
==New Releases==
['''TIP'''] If you want to install the ubuntu image you should install the ubuntu rootfs and use the ISEE kernel and bootloader.
['''IMPORTANT'''] ISEE is not responsable about the Ubuntu releases you should read the information about Ubuntu deprecation releases in the Ubuntu webpage.
=== Ubuntu 12.04.4 LTS (for IGEPv2, IGEP COM MODULE ISEE devices) ===IGEPv2, IGEP COM Module and IGEP COM Proton Ubuntu page is located [[IGEPv2 Ubuntu Distro|here]]
=== Ubuntu 12.04.4 LTS Hard Float (for IGEPv5) ===
IGEPv5 Ubuntu page is located [[IGEPv5 Ubuntu Distro|here]]
=== Ubuntu 14.04 Lxde (for IGEP iMX6) ===IGEP iMX6 Ubuntu page is located [[IGEP iMX6 Ubuntu Distro|here]]
==Old Releases===== Ubuntu 10.10 (Maverick Meerkat) === First, download the compressed image from http://cdimage.ubuntu.com/ubuntu-netbook/ports/releases/
wget http://cdimage.ubuntu.com/ubuntu-netbook/ports/releases/maverick/release/ubuntu-netbook-10.10-preinstalled-netbook-armel+omap.img.gz
Next, uncompress the image with
gunzip ubuntu-netbook-10.10-preinstalled-netbook-armel+omap.img.gz
Then write the raw image to a blank SD card (the card size should be >2G)
sudo dd if=<uncompressed image> of=/dev/mmcblk0 # change /dev/mmcblk0 with appropriate device
Current boot file system (x-loader + u-boot + kernel) not works, so we need to replace. First download and extract this package
wget https://edge.launchpad.net/ubuntu/+source/linux/2.6.35-22.33/+buildjob/1970697/+files/linux-image-2.6.35-22-omap_2.6.35-22.33_armel.deb
sudo cp -fr boot lib usr /media/<rootfs> # change <rootfs> with appropriate SD rootfs partition
then, create an uImage file with
mkimage -A arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008000 -n "Linux" -d boot/vmlinuz-2.6.35-22-omap uImage
cp uImage /media/<bootfs> # change <bootfs> with appropriate SD boot partition
next, download and copy x-loader from
wget http://downloads.isee.biz/pub/SW_Releases/binaries/x-loader/v1.4.4-3/x-load-1.4.4-3.igep0020-sdcard.bin.ift
cp x-load-1.4.4-3.igep0020-sdcard.bin.ift /media/<bootfs>/MLO # change <bootfs> with appropriate SD boot partition
and finally, do the same with u-boot
wget http://downloads.isee.biz/pub/SW_Releases/binaries/u-boot-arm/v2010.06-3/u-boot-arm-2010.06-3.igep0020.bin
cp u-boot-arm-2010.06-3.igep0020.bin /media/<bootfs>/u-boot.bin # change <bootfs> with appropriate SD boot partition
The last step is copy boot.scr to boot.ini
cp /media/<bootfs>/boot.scr /media/<bootfs>/boot.ini # change <bootfs> with appropriate SD boot partition
Umount bootfs and rootfs partitions, push your SD card in your IGEP socket, power up and enjoy !
==== System Testing and known issues ====* Can't bring up eth0, no network - this is a known issue that has been fixed but may not have been applied yet.** https://bugs.launchpad.net/ubuntu/+source/linux/+bug/645689 (see tips and tricks for solution)
wget http://downloads.igep.es/ubuntu/maverick/linux-image-2.6.35-23-omap_2.6.35-23.40_armel.deb
sudo cp linux-image-2.6.35-23-omap_2.6.35-23.40_armel.deb /media/<rootfs> # change <rootfs> with appropriate SD rootfs partition
Boot up your Ubuntu , open a terminal and install
sudo dpkg -i linux-image-2.6.35-23-omap_2.6.35-23.40_armel.deb
Reboot your system, now the ethernet an wifi should work.
'''Note:''' Some users have encountered that after kernel update still booting the old kernel, to solve this issue do:
mkimage -A arm -O linux -T ramdisk -C none -a 0 -e 0 -n initramfs -d /media/<rootfs>/boot/initrd.img-2.6.35-23-omap /media/<bootfs>/uInitrd
mkimage -A arm -O linux -T kernel -C none -a 0x80008000 -e 0x80008000 -n 2.6.35-23-omap -d /media/<rootfs>/boot/vmlinuz-2.6.35-23-omap /media/<bootfs>/uImage
===== How to get SGX Video Acceleration (under construction, not tested yet) =====src: https://wiki.ubuntu.com/ARM/OMAP/Graphics
wget http://downloads.igep.es/ubuntu/maverick/linux-headers-2.6.35-23-omap_2.6.35-23.40_armel.deb
sudo dpkg --install --force-depends linux-headers-2.6.35-23-omap_2.6.35-23.40_armel.deb
Activate the universe and multiverse repositories, then install the following packages:
sudo apt-get install libegl1-sgx-omap3 libgles1-sgx-omap3 libgles2-sgx-omap3
Before using it just be sure your user is also included at 'video' group.
sudo adduser <your user> video
Now you can test the SGX with a DEMO, grab and untar the SDK Demo Package
wget http://neuvoo.org/neuvoo/distfiles/SGX-3.01.00.07-SDK.tar.gz
tar xzf SGX-3.01.00.07-SDK.tar.gz
Then to run the demos just get into the X11 Binaries directory (e.g. OGLES/SDKPackage/Binaries/CommonX11/Demos/EvilSkull) and run the demo:
./OGLESEvilSkull
===== How to cross build ubuntu maverick kernel from sources ===== Create a script for setting the environment
echo "Setting environment for armel cross-compile"
export DEB_HOST_ARCH=armel
Clone the ubuntu maverick repository
git clone git://kernel.ubuntu.com/ubuntu/ubuntu-maverick.git
cd ubuntu-maverick
Setup the environment and run ...
source armconfig
fakeroot debian/rules binary-omap
The resulting two .deb files will be located in ../ === Ubuntu 9.04 (Jaunty Jackalope) ===
===Ubuntu 9.04 (Jaunty Jackalope)======= Make a bootable MMC card on Linux ====Thanks to Graeme Gregory and Steve Sakoman, you can now use [http://www.sakoman.com/OMAP3/a-script-for-partitioningformatting-a-bootable-sdmicrosd-card.html a script to automate the tedious process of creating a bootable SD/microSD card.]
# Set bootargs for ubuntu MMC boot
bootm 80200000
And use the mkimage tool to convert this file into a script image which can be executed using U-Boot's source command.
$ source /usr/local/poky/eabi-glibc/arm/environment-setup
$ mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n 'Boot setup script' -d boot-ini.source boot.ini
If you are not using IGEP's virtual machine, you can download and install the Poky SDK from http://www.igep.es/index.php?option=com_content&view=article&id=99&Itemid=112&dir=/var/www/vhosts/igep.es/httpdocs/downloads/01-ISEE_Products/IGEPv2/SW_Releases/poky/purple-3.2/v3.2.1-0/sdk once logged in. This will provide the /usr/local/poky directory. If you use this option, the appropriate source command is <tt>source /usr/local/poky/eabi-glibc/environment-setup-arm-none-linux-gnueabi</tt>.
The result will be a boot.ini file which you will copy to SD card boot partition
$ cp boot.ini /media/boot
==== Get a copy of a ARM ubuntu root file system ==== In order to get a copy of a ARM ubuntu root file system, you will need to install qemu and a recent version of debootstrap and the qemu package. On some systems you may also need the qemu-kvm-extras package to run the ARM emulation.
$ sudo apt-get install qemu
$ sudo dpkg -i debootstrap_1.0.12_all.deb
Next, you will download a helper program to build the rootfs
$ wget http://launchpad.net/project-rootstock/trunk/0.1/+download/rootstock-0.1.3.tar.gz
$ cd rootstock-0.1.3
The following example will create a tarball of ubuntu-desktop based image for your target device:
$ sudo ./rootstock --fqdn ubuntu --login jdoe --password letmein --imagesize 3G --seed ubuntu-desktop --dist jaunty
Typical images (example settings):
To build a xubuntu-desktop image use the following options:
--imagesize 2G --seed xubuntu-desktop
For an ubuntu-desktop image (a similar size is needed if you want a kubuntu image):
--imagesize 3G --seed ubuntu-desktop
A typical remote development comandline environment if you run an armel board headless (note that you should edit /etc/network/interfaces and set up your network device on first login for this):
--imagesize 3G --seed build-essential,openssh-server
A very light desktop (lxde):
--seed lxde,gdm
This step can take a long time. For example, building ubuntu-desktop on a Celeron 1.6GHz laptop takes approximately 10 hours. When it is finished, a file named armel-rootfs-[date].tgz will be in your working directory.
Next, mount your SD card ext3 partition (/media/rootfs) and untar the rootfs
$ sudo tar xzf armel-rootfs-[date].tgz -C /media/rootfs
Finally, umount the SD card, insert the card in your board and power up.
--- That's all folks ---
= See also =* [[How to get the Linaro distribution]]* [[How to get the Angstrom distribution]]* [[How to get the Android distribution]]* [[How to get the Meego distribution]]* [[How to get the Poky Linux distribution]]
[[Category:Ubuntu]][[Category:Software distributions]]