Introduction

el LOOX 600 es un PDA basado en Xscale. Es entregado con m$ Pocketpc. El objetivo de este proyecto es tener Linux en el LOOX.


Boot loader

Para hacer mas fácil el desarrollo Linux se cargará desde la Tarjeta CF. son necesarios 4 ficheros para ejecutar Linux:
1 - Un bootloader o cargador (cyace-arm.exe).
2 - Un fichero de configuración para el bootloader (cyacecfg.txt).
3 - Un Kernel Linux (linux.kernel.kernel).
4 - Un fichero initrd conteniendo el sistema de ficheros mínimo ext2 (linux.kernel.initrd).

Arrancar desde la tarjeta CF nos permite regresar a PocketPC2002 pulsando el boton de reset del LOOX. Obviamente todo el contenido de la RAM se pierde después de cargar Linux, no olvide realizar copia de seguridad del LOOX antes de hacer ninguna prueba.

El boot loader (cargador) se ha adaptado al LOOX de hiyace-yach . Para compilarlo es necesario Microsoft eMbedded Visual C++ 3.0. Vea msdn downloads .

El ejecutable se llama cyace-arm.exe. Para crearlo descargue el subproyecto hiyace-yach En un PC con windows (w98 es suficiente) y seleccione el Project Workspace cyace.vcw. Conecte el LOOX al PC utilizando el cable USB. En el m$ eMbedded Visual C++ click build. cyace-arm.exe será transferido al windows/Start Menu del LOOX.


Building Kernel

Para crear el Kernel necesita los binutils y el gcc para Xscale. Vea Chaintool for the Pocket LOOX si usted quiere crearlo.

Para preparar el Kernel siga los siguientes pasos:
1 - Descargue los fuentes del Kernel de www.kernel.org .
2 - Descargue y aplique los Patches para procesadores ARM de ftp.arm.linux.org.uk .
3 - Descargue y aplique los Patches para los procesadores Xscale de ftp.arm.linux.org.uk .
4 - Descargue y aplique los correspondientes Patches para LOOX.

Las versiones deben ser compatibles:

LOOX patches XScale patches ARM patches Kernel version
diff-2.4.19-rmk7-pxa1-loox diff-2.4.19-rmk7-pxa1 diff-2.4.19-rmk7 2.4.19

Haga algo parecido a esto:

Descargue el Kernel de www.kernel.org y extraigalo de la forma usual.
[user@host] ~ $ mv linux-2.4.19 linux
[user@host] ~ $ patch -p0 < patch-2.4.19-rmk7
patching file linux/CREDITS
patching file linux/Documentation/Configure.help
patching file linux/Documentation/arm/Booting
...
Esto no debe dar ningun error
[user@host] ~ $ patch -p1 < diff-2.4.19-rmk7-pxa1
patching file linux/Documentation/Configure.help
patching file linux/Documentation/arm/XScale/PXA/USB-client
patching file linux/Makefile
...
Esto no debe dar ningun error
[user@host] ~ $ patch -p1 < diff-2.4.19-rmk7-pxa1-loox
patching file linux/Makefile
...
En este punto usted ya tiene los fuentes del Kernel para LOOX!

Configure el Kernel para el LOOX:
En System Type escoja PXA250/210-based
En Intel PXA250/210 escoja FSC Pocket LOOX 600
En System Type escoja Workaround for XScale cache errata.

En General setup escoja NWFPE math emulation
En General setup llene Default kernel command string con "keepinitrd initrd=0xA2200000,1776638 video=pxa:xres:240,yres:320,bpp:16"

Vaya a MMC device drivers (bajo General setup):
Escoja Multi Media Card support
Escoja PXA250 MMC driver
Escoja MMX block driver
Escoja MMX partitioning support

En Block device escoja RAM disk support
En Block device escoja Init RAM disk (initrd) support

Vaya a Console Driver:
En Frame-buffer support escoja Support for frame buffer device
En Frame-buffer support escoja PXA LCD support
escoja 16-Bpp for LCD Bit Depth

En Character devices escoja Standard/generic (8250/16550...)
En Character devices escoja Support for console on serial port

Cree (build) el Kernel:

[user@host] ~ $ make dep
...
make[2]: Leaving directory `/home/loox/linux/arch/arm/fastfpe'
make[1]: Leaving directory `/home/loox/linux'
[user@host] ~ $ make Image
...
make[1]: Entering directory `/home/loox/linux/arch/arm/boot'
/usr/local/arm/bin/arm-linux-objcopy -O binary -R .note -R .comment -S /home/loox/linux/vmlinux Image
make[1]: Leaving directory `/home/loox/linux/arch/arm/boot'
[user@host] ~ $ ls -lt arch/arm/boot/Image
-rwxr-xr-x 1 loox users 1147820 2003-06-21 14:47 arch/arm/boot/Image
El fichero Image debe ser copiado en la tarjeta CF bajo el nombre linux.kernel.kernel


Made using Ant-1.5.1 and Xalan- 1 ( Apache Software Foundation : http://xml.apache.org/xalan-j )