CSC714 Project - Familiar Linux for the iPAQ H3975 (XScale Processor)

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:

  1. Copy BootBlaster onto iPAQ.Done - Adinarayanan
  2. Save the WinCE image.Done - All
  3. Install the Bootldr.Done - Srivatsa
  4. 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
  5. 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.
  6. Install Linux on iPAQ.Installation instructions
  7. 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



Any comments or questions, email me - adinarayanan@rediffmail.com
Last updated - December 02,2002.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Site Design by Pegasus - Web design, tips and free site templates.