Alon's Implementation Sample

Note

Did not reach to stable configuration yet, this is documentation of my configuration.

Alon Bar-Lev

Create the image

Packages

Extra keywords are available at attachment:x.conf, this should be applied both to host and target, place it at portage-flags-common/keywords of overlay.

Installed packages are available at attachment:world and attachment:world_sets.

After the long process of

emerge-armv4tl-softfloat-linux-gnueabi --update --deep --newuse world

And fixing all the issues.... You are ready to continue.

Minimal layout

Setup root password at ${ROOT}/etc/passwd.

Create home for root at ${ROOT}/root.

Create lastlog file:

touch ${ROOT}/var/log/lastlog

Make sure ssh daemon is at default runlevel.

Set up usb networking, example is provided at /etc/conf.d/net.

ln -s net.lo ${ROOT}/etc/init.d/net.usb0

Setup /etc/conf.d/modules.

More configurations

Compiling the kernel

I use the latest andy-tracking, with the following build.linux build.linux script, while the kernel tree is within ./openmoko-linux-2.6.

You should have dev-embedded/u-boot-tools on the host.

It takes ./linux.config and It produces uImage.bin, uImage.modules.tar and linux.config.

Creating the image

I use the following mkimage script to create a tarball of the root filesystem, it expects to find the modules tarball (produced by kernel compilation).

Install the image

Make the Openoko's SD Flash available on the host, create two partitions, place the uImage.bin at the boot partition, and extract the image:

tar -C /mnt/<whatever> -pPsSxf openmoko-image.tar

First boot

Boot your phone with the new image, login to the system and run:

image-init

It will finalize settings and celebrate touch screen.

Reboot, and you are ready to go.

Attachments