README
------
Andre Beckedorf < evilJazz AT katastrophos DOT net >


DISCLAIMER
----------
Everything in this directory is provided AS IS without any WARRANTY or
LIABILITIY of any kind implicitly or explicitly whatsoever.
In other words: IF SOMETHING GOES WRONG, IT'S YOUR FAULT, NOT MINE!


PREREQUISITES
-------------
To compile the kernel sourcecode in the subdirectory "linux" 
you have to use a compiler that understands the iWMMX instruction set.
The default cross compiler provided by Sharp does not come with support
for this instruction set.
Please use this compiler instead:

http://www.katastrophos.net/zaurus/kernels/compiler/arm-cacko-linux-gnu-2.95.3-2.2.5-hardfloat-19.50_21.09.05.tar.bz2

Unpack the compiler to /opt/cross

Modify your PATH env var to point to the compilers binaries:

export PATH=/opt/cross/arm/2.95.3/bin:$PATH


CONFIGURATION
-------------

Default configs are located in the subdirectory "configs". 
These are perfectly fine for the Cacko and Sharp ROMs.
If you want to build for pdaXrom, you need to patch ide-cs.c before.
You can find this patch in the "specific-patches" subdirectory. Also, the 
default configs need to be changed slightly to get a working kernel for
pdaXrom. See the "makeall.sh" script for the required changes or download
one of the created "kernel-config" files that come with a built kernel.
Either way, you're better off using the "makeall.sh" script than trying 
to manually compile the kernel:
 

AUTOMATIC BUILD via makeall.sh (recommended)
--------------------------------------------

The included script "makeall.sh" will take care of automatically building 
the kernels for all supported devices, in all configurations and for all 
supported ROMs.
Make sure to install ccache beforehand or prepare to suffer through a very long
compilation process.


MANUAL BUILD
------------

Choose one of the configs that fits your device from the subdirectory "configs" 
and copy it over to the "linux" subdir. 
NOTE: These configs are tuned for the Cacko and Sharp ROMs and will not work
with pdaXrom. See CONFIGURATION above.

Make sure to rename the config file to ".config" and call

make oldconfig
make dep
make zImage

The kernel is located in linux/arch/arm/boot/zImage


INSTALLATION AND FLASHING THE ZAURUS
------------------------------------

To flash your new kernel, copy your kernel zImage onto a CF or SD card along
with the proper updater.sh script for your device. You will find the updater.sh
script in the updaters subdir. Make sure to rename it to updater.sh
Your CF or SD card should be FAT16 formatted. Put both files into the root, 
so that it contains:

zImage
updater.sh

Then reboot your Zaurus while holding down the OK button.
This way the maintenance menu should come up. 
Choose 4 (Update), 1 (CF) or 2 (SD), Y 
NOTE: This is for C3200.
The process may be different on the other devices. Your mileage may vary here.
You can find additional information for the update process here:
http://www.tyrannozaurus.com/?q=cacko