====
Itsy
====

Itsy is a research project done by the Western Research Lab, and Systems
Research Center in Palo Alto, CA. The Itsy project is one of several
research projects at Compaq that are related to pocket computing.

For more information, see:

	http://www.hpl.hp.com/downloads/crl/itsy/

Notes on initial 2.4 Itsy support (8/27/2000) :

The port was done on an Itsy version 1.5 machine with a daughtercard with
64 Meg of DRAM and 32 Meg of Flash. The initial work includes support for
serial console (to see what you're doing).  No other devices have been
enabled.

To build, do a "make menuconfig" (or xmenuconfig) and select Itsy support.
Disable Flash and LCD support. and then do a make zImage.
Finally, you will need to cd to arch/arm/boot/tools and execute a make there
to build the params-itsy program used to boot the kernel.

In order to install the port of 2.4 to the itsy, You will need to set the
configuration parameters in the monitor as follows::

	Arg 1:0x08340000, Arg2: 0xC0000000, Arg3:18 (0x12), Arg4:0

Make sure the start-routine address is set to 0x00060000.

Next, flash the params-itsy program to 0x00060000 ("p 1 0x00060000" in the
flash menu)  Flash the kernel in arch/arm/boot/zImage into 0x08340000
("p 1 0x00340000").  Finally flash an initial ramdisk into 0xC8000000
("p 2 0x0")  We used ramdisk-2-30.gz from the 0.11 version directory on
handhelds.org.

The serial connection we established was at:

8-bit data, no parity, 1 stop bit(s), 115200.00 b/s. in the monitor, in the
params-itsy program, and in the kernel itself.  This can be changed, but
not easily. The monitor parameters are easily changed, the params program
setup is assembly outl's, and the kernel is a configuration item specific to
the itsy. (i.e. grep for CONFIG_SA1100_ITSY and you'll find where it is.)


This should get you a properly booting 2.4 kernel on the itsy.
