Subject: Re: FW: NetBSD File Systems
To: Ken Hornstein <kenh@cmf.nrl.navy.mil>
From: Thor Lancelot Simon <tls@rek.tjls.com>
List: tech-embed
Date: 03/06/2001 01:07:14
On Mon, Mar 05, 2001 at 11:41:17PM -0500, Ken Hornstein wrote:
> >If you're not building a host that performs a critical security function,
> >much of this may not apply to you -- but I thought it might be useful to
> >you to know what I did.  Another benefit of using ATA flash is that with
> >the right cable, any machine that can boot from an IDE *disk* can boot from
> >them; ATA flash parts all act like IDE disks if connected to an IDE bus or
> >PCMCIA IDE *controllers* if you put them in a PCMCIA slot.  This can let
> 
> Just curious: where do you get the IDE->CompactFlash cable from?  I've
> seen the PCMCIA "sleds", of course ...

The same company that makes the PCMCIA "sleds", Adtron (one "d") also makes
IDE sleds.  Of course, to use those, you need to put the card in a PCMCIA
form-factor adapter, so they aren't suited for very small systems.

At least one manufacturer of motherboards (flytech) puts a CompactFlash
socket on the motherboard, wired up to the IDE controller appropriately.

I discussed building custom "sleds" (of course, they wouldn't be much like
the big "sleds" since they'd be quite small) to fit into the front of 1U
cases and directly accept CompactFlash cards with someone at Adtron once.
They said they could do it, though IIRC the prices they were tossing
around weren't great.  For one-off embedded systems where hot swap of the
flash wasn't required, I think I'd just use a Radio-Shack etch kit to make 
a tiny PCB with an IDE pin header and a CF socket or even just a compatible
set of pins on it; for more volume or if I needed to swap cards without
opening the case (that is, I needed "clean" access to the card from the
front of the machine) I'd have a custom cable house make me up some cables
with a CF socket on one end and an IDE cable on the other; it'd still be
cheaper by far than having a whole custom circuit board made until you hit
huge volumes.  Remember, 4MB and even now 8MB CF cards are now really,
REALLY cheap.

Incidentally, be careful of some off-brand CF cards that don't write
reliably without 12V, or even, in "drive mode", at all.  I had a lot
of trouble until I switched to SanDisk brand only, which have always
worked very reliably for me.

A nice hack if building a bunch of machines that boot/run from CF is to
have a "burner machine" with a shell script for building images from
directory trees or config files and a *PCMCIA* sled in it; then you can
hot-swap the cards as you burn them without needing to whack your IDE
disk driver to deal with disks going away and coming back (which is
highly nonstandard) or rebooting your machine between each burn.

I wish I could provide the shell scripts I use for this kind of bulk
burning but unfortunately they may belong to a former consulting client
of mine and I've never bothered to clarify their status.  Not hard to
rewrite, however.

If someone in the right group at Intel is reading this, gawsh, it
would be nice if your next generation of "server" motherboards or StrongARM/
Xscale mainboards just had CF sockets on them... hint hint. :-)

-- 
Thor Lancelot Simon	                                      tls@rek.tjls.com
    And now he couldn't remember when this passion had flown, leaving him so
  foolish and bewildered and astray: can any man?
						   William Styron