next up previous Link to 'computer' page
Next: SD/MMC slot (CardBus bridge, Up: Internal Hardware Previous: Display ATI

Compact flash

Not recognised during the first boot. I needed to re-boot the computer for the compact flash to be recognised. Make sure the `pcmciautils' service is turned on, runlevel `S'. Note that `pcmciautils' replaces the `pcmcia' service.

When the compact flash is inserted, use the shell command `pmount /dev/hde1 cf' to mount the compact flash onto /media/cf. The `hde1' device name can be seen by using the command `cat /proc/partitions' after the CF card is inserted.

If the compact flash is inserted, either during or after boot, sometimes things goes wrong during the hardware detect process. The boot process slows down haltingly, it looks like it is frozen, but it is not. After several minutes of complaining about a broken link to hdf (the Compact Flash drive is at hde), the Muramasa eventually completes booting. System warning messages continue after boot is complete, saying that the link to hdf is broken. `hdf' should not exist. Meanwhile, attempting to access the Compact Flash via hde1, or accessing hde with fdisk, fail. This seems to only happen with my 4GB compact flash, it does not happen with a 512 MB Compact Flash card.

I tried to re-format the 4GB compact flash, since its partition table appeared to be corrupted when I inserted it into a USB Compact Flash card reader and used `fdisk' from Linux. That did not work.

This bug is described in Kernel Bugzilla Bug 6086 -- System can freeze when inserting/removing CompactFlash-Cards into PCMCIA slot, and is allegedly fixed in kernel version 2.6.16rc3. Ubuntu 6.0.6 uses kernel version 2.6.15. Great instructions on how to create your kernel 2.6.16 Debian package can be found on the Ubuntu forums, under Support & Resources, HOWTOs. However, that still does not work! The same problem also happens in SuSE 10.1 (kernel, for which I have found a fix ([*]).

The bug is also described on linux kernel list.

Setting kernel options like `hdf=none' or `hdf=noprobe' does not work.

`sysv-rc-config' is a useful command-line/shell tool to adjust running services. It needs to be run as root, so is executed with the command `sudo sysv-rc-config'. It is not installed by default, but can be installed with the `synaptic' package manager.

next up previous Link to 'computer' page
Next: SD/MMC slot (CardBus bridge, Up: Internal Hardware Previous: Display ATI
David Fong 2011-01-25