HP iPAQ 210 / 214 - Developers' Info
How to helpMost information will be built up on the Mailing List, check the archives first and then feel free to send an e-mail to the list and I or someone else will help.
There is also all my notes and workings here: http://www.oliford.co.uk/hpipaq214/public/. I also have some 'private' data that I guess I can't hand out openly. E-mail the list if you are planning to help and I'll send you it.
Things to do
LCD - The image sometimes gets stuck ~1/4 out to the left/right. I have made sure it is writing the same things to the registers as windows does so in theory it should be configured exactly the same way. If anyone has any experience/ideas please look into it!
USB Client - This is run through the QuickLogic chip. We have docs but a driver will need to be written almost from scratch.
Compact Flash - I think this is through the QuickLogic chip. We don't have docs on this but maybe someone can trace it in HaRET.
Frequency Scaling - Now present! Needs work on the regulation configuration (when to switch etc) to find a nice setup and also it's effect on the power usage could be investigated.
Dynamic Power Management - We have all the details for this to be done as well as code which does it in an old kernel. It just needs forward porting.
Suspend Power Usage - This works but drains ~40% overnight whereas windows drains next to nothing. The MFP states and various device states in the two OSes need to be compared to figure out why. More testing required here also.
Charging status - The charging/full status is currently taken from battery which isn't that accurate. It's better taken from the charger's GPIOs (see arch/arm/hpipaq214.c in the kernel). Work out how to get this info into the power-supply system properly.
Touchscreen driver IRQ mode - There is already some code to do this in drivers/input/touchscreen/hpipaq214-ts.c but I never managed to get it fully working. It would probably make the touchscreen more responsive.
2D Graphics and/or video acceleration - I've managed to get basic colour fill and copy BLT operations into the X-server as well as the scale BLT operations used for video playback via with the overlays.
WiFi - Low-level stuff mostly works (see Wifi page), needs a nice UI though.
Make HaRET properly recognise the PXA3xx and/or the iPAQ 21x.
Test/Fix HaRET booting U-Boot so people can use the 2009+ releases from winCE.
See how stable flashing is when booting from HaRET.
MMC/SD Cards - Many did't work in linux. I've added some code to do better voltage control if the card needs it. This needs testing by someone who has a card which didn't work with v3.
Make the 'how-to install' page a bit more newbie friendly. e.g how to do it from a linux live-CD (like Ubuntu) for those who don't have linux on their desktop.
Flashing linux and recovering windows is new and needs testing by anyone not too scared of losing windows,
SourceThe source for the kernel is stored in my git tree. You can check it out by running:
git clone http://www.oliford.co.uk/hpipaq214/ipaq214.git v4
The standard config is in arch/arm/configs/hpipaq214_defconfig in the tree.
The entire Angstrom distribution source comes via OpenEmbedded. To compile for the iPAQ 21x you will need the following files:
|config-ipaq214-20080831||Kernel config including DC in/battery status|
|config-ipaq214-v3.1||Kernel configuration for v3.1|
|config-ipaq214-v2||Kernel configuration for v2|
|ipaq214.conf||Machine definition conf file|
|linux-hpipaq214_2.6.25-v3.bb||Kernel building recipe. Edit this to reflect your local kernel source path|
|mmcBoot/*||The MMC Bootloader recipe and source|