2.6 Linux Kernels for Sharp Zaurus handhelds
This page gives details on the support for:
- SL-C7xx Series: SL-C700 (Corgi), SL-C750 (Shepherd), SL-C760 (Husky)
- SL-C860 (Boxer) (which is the same as the SL-C760 Husky)
- SL-Cxx00 Series: SL-C3000 (Spitz), SL-C1000 (Akita), SL-C3100 (Borzoi), SL-C3200 (Terrier)
- SL-5600 (Poodle)
Work on devices being undertaken by others:
- SL-C6000 (Tosa): Dirk Opfer
- SL-5500 (Collie): Pavel Machek - see Linux kernel mailing list archives
Other people have worked on devices in the past:
- SL-5500 (Collie) and SL-5600 (Poodle): John Lenz
- Alexander Wykes did the inital work on the SL-C3000 and his status page is here
My current patches are available here.
Also see the Patch Archive.
The best way to compile a kernel using these patches is to use the openzaurus-2.6.xx.bb file in
OpenEmbedded. The correct sequence for applying the
patches is maintained there.
I can be contacted at webwide@rpsys.net. Announcements
and discussion of zaurus related kernel development happens on the
openzaurus-devel mailing list.
OpenEmbedded Zaurus 2.6 Linux Kernel Status
The following list shows the sections of code that have been written and which devices
they support. This code is either in mainline kernels or is ready to be merged:
- Basic Machine definitions and Support (all models)
- Corgi SSP (5600, c7x0, cxx00)
- Sharp SCOOP Support (controls CF interface) (all models)
- C7x0 FrameBuffer Driver (via w100fb)
- 5600 and Cxx00 FrameBuffer Driver (via pxafb)
- PCMCIA/CF Support (all models)
- LCD Backlight Class (generic code)
- MTD SharpSL Device Support (5600, c7x0, cxx00)
- MMC and SD Support (5600, c7x0, cxx00, c6000)
- Corgi Backlight Driver (c7x0, cxx00, c6000)
- USB Device Support (c7x0)
- Corgi Touchscreen Driver (5600, c7x0, cxx00)
- Corgi Keyboard Driver (c7x0)
- Spitz Keyboard Driver (cxx00)
- PXA Irda Driver (5600, c7x0, cxx00)
- SharpSL Battery Driver (c7x0, cxx00)
- SharpSL Power Management Code (c7x0, cxx00)
- Akita I2C IO Expander (c1000)
- Console rotation code (5500, 5600, cxx00)
- PXA RTC driver (5500, 5600, c7x0, cxx00, c6000)
- LED Class (generic code)
- LED Triggers (nand-disk, ide-disk, sharpsl-charge) (generic code)
- LED Device specific drivers (all models)
Unsupported hardware is listed by device below.
Known Kernel Issues/Bugs:
Model Specific Information
SL-C7x0 and SL-Cxx00 General Information:
Under 2.6 one kernel supports all the SL-C7xx machines and another the SL-Cxx00 series. No
cmdline mtd parameters are needed for the default partition sizes and RAM size should be
automatically detected. The Sharp Logical NAND layer has not been ported to 2.6 so the
nandlogical utility should *NOT* be used under the 2.6 kernel. The ioctls numbers it uses are
present but do different things. If the source to nandlogical became available, it may be possible
to create a utility under 2.6 - the whole thing should really be done in userspace via the
block/char devices though.
Current Status:
Large chunks of SL-C7xx and SL-Cxx00 support have been merged into the mainline Linux
kernel from 2.6.11 onwards and most support is now in mainline. All device features except
those mentioned below are working.
Code which is feature complete and ready for mainline inclusion:
- ALSA Sound Drivers for wm8731 and wm8750
- Reboot and Shutdown handling
- QVGA video modes on SL-Cxx00
Working but not ready for mainline:
- SL-Cxx00 USB Client (UDC) for Linux
Unsupported:
- CPU frequency scaling on SL-Cxx00
- SL-Cxx00 USB Client (UDC) for Windows (RNDIS)
- Video Overlay support on SL-Cxx00
- Sharp Remote control Support
- Sharp Camera Support (will never happen)
SL-5600 General Information:
Current Status:
Device features other than those mentioned below are working.
Experiental support in 2.6 kenerls:
- SharpSL Battery Driver
- SharpSL Power Management Code
- USB Device Support
- Sound
SL-5500 General Information:
Current Status:
The latest support is to be found in Pavel Machek's git tree.
Problematic support:
- Touchscreen (suffers bad interference)
Unsupported:
- Suspend/Resume
- Battery/Charging
- MMC/SD (no documentation on the controller)
- USB Client
- Sound