Our today’s star of the new gallery is Sharp Zaurus SL-6000. It’s a Linux-based handheld from 2004.
SL-6000 is the last device from the Zaurus series to be officially sold outside Japan. Also it’s the last slider in the Zaurus series.
Tag: zaurus
Gentoo on a Zaurus PDA
Introduction
This is a Gentoo rootfs archive customized for SL-C1000 models. It may also be useful for owners of the C3x00, but some adjustments will probably be necessary to make it work on these models (like kernel recompilation).
This article and all information and products in it are provided on an "as is" basis, without warranty of any kind, either express or implied. Your use of this article is at your own risk.
Description
The distribution is originally based on stage3-armv5tel-20090623.tar.bz2. The following is configured:
- Added spitz keyboard layout (calendar key toggles langugage).
- All packages are recompiled with
-O2
instead ofOs
. - USB network.
- WiFi network.
- BlueTooth network (via ppp).
- IrDa network (via ppp).
- The kernel 2.6.24 is compiled with appropriate patches and config.
- The mail led indicates SD card activity.
- Locale is set to
ru_RU.UTF-8
. - Timezone is set to GMT +3 (Moscow).
- procps is recompiled with the Debian patches, which fix the ‘Unknown HZ value’ error.
There are two ways to load the kernel: directly (without a bootloader) or via kexecboot. In the first case you need to flash the kernel (see the manual below). Both versions use the first partition of SD card as root.
The following packages are installed:
alsa-utils bluez-utils dhcpcd elinks (with the Debian patches) zgv gentoo-sources gentoolkit mpc mpd mutt pcmciautils pidgin ppp sdcv syslog-ng vim wireless-tools
Here is a complete list of packages (equery l
).
Notes:
- There’s no Xorg, because Zaurus is too slow for running it in my opinion.
- The system works quite stable, but optimization for iwmmxt is disabled because of the kernel issue.
/usr/portage
is removed from the tarball in order to reduce its size. You can download it from here.- The tarball contains the kernel sources with all the patches applied and the config file (in the
/usr/src/linux
directory).
How to install
Kernel (skip this part if you use the kexec bootloader).
- Format a CF or SD card with
mkfs.msdos -t vfat -F 16 /dev/<your-dev-name>
. - Put the following files into the root directory of the card:
- zImage.bin (1.2 Mb)
- updater.sh (13 Kb)
- Turn your Zaurus off using
halt
. - Connect the Zaurus to A/C power.
- Hold the ‘OK’ button and press the power on/off button.
- You should see a menu. Select the option #4 and then either 1 or 2 depending on your flash card type. Confirm the kernel installation by selecting Y.
- Wait till your Zaurus reboots and displays the error
Unable to mount root fs
.
Rootfs
- Download the rootfs tarball: gentoo-rootfs-20100627.tar.bz2 (206 Mb).
- Format the first partition of your SD card as ext2 or ext3.
- Extract the rootfs to this partition (
tar xvpf gentoo-rootfs-20100627.tar.bz2 -C /mnt/<your-mnt-dir>
). - Insert the SD card into the Zaurus and reboot the machine.
WPA2
The rootfs provided above uses the orinoco
driver for Prism-based WiFi cards. I recently figured out, that the kernel 2.6.24 already contains a better one – hostap
. This driver support WPA2 and the Master mode (for making WiFi AP).
So I recommend to disable CONFIG_HERMES
and enable CONFIG_HOSTAP
instead. This will be done in any future rootfs release.
Besides the hostap
driver, WPA2 support also requires relatively new firmware. If your Prism-based WiFi card has too firmware version, you will need to update it. Here is a very detailed manual describing how to reflash Prism chipset. The utilities and the new firmware (version 1.8.2) can be downloaded from here.
WARNING: I haven’t tested flashing by myself. I use Zonet ZCF1100 with the firmware 1.8.0, and WPA2 works fine. Please read the manual very carefully and think twice before flashing.
Mirrors
Zaurus-dedicated websites are slowly dying. Therefore I decided to make a local mirror of some information I considered useful:
- Cacko (firmwares files, feed, sources, etc)
- pdaXrom (firmware files, fee, sources, etc)
- Datasheets for Zaurus’ hardware
- Yonggun’s kernel (zImages, modules, sources, config)
- Kexecboot bootloaders (installkits)
- Mplayer (sources, patches, ipk-packages)
- NAND backups
- OpenZaurus patches for linux-2.6
- OpenBSD port (manuals, kernel, packages, etc)
- NetBSD port (manuals, kernel, packages, etc)
Isses/ToDo
- Cpufreq – apply the
cpufreq
patch for pxa27x to enable frequency scaling. - QVGA – pdafb supports QVGA mode, try to configure it (may be useful for games).
- Touchscreen jittering – the problem seems to be caused by invalid hsync length received by the touchscreen driver from
pxafb
. Need to investigate it. - Netsurf seems to be the most powerful web browser for framebuffer. Try it.
Changelog
- 16 Feb 2015
Added local mirrors.
Added note about WPA2.
Added ToDo/Issue list. - 27 Jun 2010
Packages are updated to the current date.
Returned from moc back to mpd, switched from ALSA to OSS to avoid freezing of the daemon.
fim is removed, because zgv is much faster. - 10 Jan 2010
Installed a simple drawing tool called zketcher.
Installed another image viewer called fim.
The kernel is slightly modified in order to block handling of the power key when lid is closed and make touch screen work a bit cleaner. - 04 Oct 2009
Packages are updated to the current date (including glibc).
GPM is installed, works through tslib, useful in elinks.
SDL is patched with the screen rotation support (viaSDL_VIDEO_FBCON_ROTATION
).
fbi is replaced with zgv, which is faster, can zoom, etc. - 24 Jul 2009
First public release.