blueDonkey.org

Linux.CompaqiPaq
Compaq iPaq


Background

My iPAQ (a 3835 bought refurbished from uBid) is currently running version 0.6.1 of the Familiar distribution of Linux from the Handhelds project, but with some custom built additions, including most recently a new kernel to work on a fix for the problems with the MMC card support.

I am using the Opie user interface, and run with a CF sleeve in which I have a LinkSys WCF-12 802.11b card.

Building a New Kernel

TBD

Building Opie

TBD

Konqueror/Embedded

TBD

UPDATED MMC Card Support

All of the changes that were made to get SD/MMC card support working have now been incorporated into the latest 2.4.19 kernel, 2.4.19-rmk6-pxa1-hh22, which can be obtained by adding http://handhelds.org/feeds/2.4.19/ to your /etc/ipkg.conf file like this:

src kernel http://handhelds.org/feeds/2.4.19/

Once that has been added, execute the following commands:

ipkg update
ipkg upgrade

ALERT! Users of version of Familiar earlier than 0.7 should upgrade to the 0.7 release before doing this.

NEW There is a bug in the -hh22 version of the MMC/SD support that prevents the card from being re-mounted on a resume operation. The patch below fixes this issue (and removes a commented out include)

Index: mmc_core.c
===================================================================
RCS file: /cvs/linux/kernel/drivers/mmc/mmc_core.c,v
retrieving revision 1.14
diff -u -r1.14 mmc_core.c
--- mmc_core.c   22 Aug 2003 14:38:49 -0000   1.14
+++ mmc_core.c   27 Aug 2003 07:51:10 -0000
@@ -44,8 +44,6 @@
 EXPORT_SYMBOL(g_mmc_debug);
 #endif
 
-//#include "/home/luc/kernel/arch/arm/mach-sa1100/h3600_asic_mmc.c"
-
 /**************************************************************************
  * Debugging functions
  **************************************************************************/
@@ -396,7 +394,11 @@
             slot->media_driver->unload( slot );
             slot->media_driver = NULL;
          }
-         slot->flags = 0;
+         /* Clear eject & SD card here in case the next
+          * card is an MMC. Cannot clear all as suspend
+          * resume will queue eject & insert together. */
+         slot->flags &=
+            ~(MMC_SLOT_FLAG_EJECT | MMC_SLOT_FLAG_SDCARD);
          run_sbin_mmc_hotplug(dev,i,0);
       }
    }

For those not able/willing to recompile their kernel the pre-compiled binary module, mmc_base.o, should be copied to /lib/modules/2.4.19-rmk6-pxa1-hh13/kernel/drivers/mmc/mmc_base.o on your iPAQ. Once it has been copied, make sure it is still owned by root and reboot. The MD5 checksum for this module is:

c1b2b5c856a44610be6fc05049ae684b  mmc_base.o

ALSA Modules

As with the SD/MMC card support, the ALSA modules are now included in the 2.4.19 kernel feed. Follow the instructions above to add this to your ipkg feed, and then update & upgrade to get the latest kernel complete with these modules.

Many thanks to Toby Gray for providing the modules here for earlier releases.

Links

-- JohnGordon - 25 Aug 2003

 
 
© 2003-5 blueDonkey.org, except where otherwise noted. All rights reserved.