- Group Members:
- Adinarayanan Venkatachalam (avenkat2[at]unity.ncsu.edu)
- Srivatsa Venkata Chivukula (svchivuk[at]unity.ncsu.edu)
This project involves porting the Linux operating system to the latest release of the Compaq iPAQ H3975, a Personal Digital Assistant (PDA) from HP. The earlier versions of the iPAQ used the StrongARM architecture while the latest version uses the Intel XScale processor, whose Instruction Set Architecture (ISA) is compatible with the StrongARM architecture (v5TE). But, some things that perform well on StrongA
RM will perform badly on the XScale. In particular, multi-word load and store instructions run slowly on XScale. These are used in the standard procedure call prolog and epilog, so all user-mode applications will have to be recompiled in order to perform
well on XScale.
There has been some work done toward porting Linux onto the iPAQ. It is
known as the Familiar project. Linux has been ported onto the earlier versions of the iPAQ (H3x00s where x<9). But a lot of work still needs to be done to port Linux onto H3900s. Apart from this project there is a lot of work going to port Linux onto various handheld devices.
Outline:
- Copy BootBlaster onto iPAQ.Done - Adinarayanan
- Save the WinCE image.Done - All
- Install the Bootldr.Done - Srivatsa
- Cross Compilation: Done - Adinarayanan
- Obtain glibc, binutils, gcc sources.
- The build directory is /root/ipaq/build and installation prefix is
/root/ipaq/local for host i386-*-linux and target platform is
arm-linux. The installation log is here. The installation did not go very
well and I was stuck in between. The installation log for xscale-*-elf
target can be found here
- Linux Kernel Changes: Done - Adinarayanan. Checked
out from the CVS repository of handhelds.org
- Support the
MMU.
- Check if device drivers are available for all the devices.
- Check the initialization routines.
- Optimize for the XScale architecture.
- Install Linux on iPAQ.Installation instructions
- Project Report
References and Links:
- Familiar Linux installation
and original
page
- Familiar Project
- Handhelds.org site
- ARM Linux site
- Aleph ARM Linux site
- Howto build a cross toolchain in brief
- Toolchain
sources
-
CrossGCC FAQ
-
Using and Porting
GNU CC
- Porting Minix
to the iPAQ
- Assembly Programming Guide
- Developer Manuals for PXA250 chip
- ARM Architecture Reference Manual
- Newsgroups - comp.sys.arm, comp.sys.wearables
- Mailing Lists - familiar, familiar-dev, ipaq@handhelds.org
- IRC Channels - #ipaq, #familiar on irc.openprojects.net