Subject: Compact Flash on AU1500

From: Ed Okerson <[email-masked]>
Date: Mon, 1 Dec 2003 17:18:54 -0600 (CST)

I recently finished work on u-boot to get it to read a compact flash
properly on the AU1500.  Now I need to get it working under Linux as well,
but have a few questions.  Is root fs on CF supported under 2.4.22?  I
have had conflicting reports on that, and need to know if that has to be
solved first.  I have been told that user space Card Services needs to be
loaded to detect the CF card, but that doesn't seem right with the ide-cs
in the kernel.  The problem with the AU1500 and u-boot was that the AU1X00
series processors always put the data from the CF in big-endian mode
regardless of what endian mode the CPU is running in, which is exactly the
wrong way around for reading partition tables and filesystems.  I have
been having trouble tracking down where in the kernel the actual reads are
done from the compact flash card, could someone point me to the right
place?

Ed Okerson

---

From: Dan Malek <[email-masked]>
Date: Tue, 02 Dec 2003 08:25:05 -0500

Ed Okerson wrote:

> but have a few questions.  Is root fs on CF supported under 2.4.22?

I guess you mean a CF card in a PCMCIA slot.  There are boards that
use a CF through a CPLD connected to the processor bus, which works with
the usual custom IDE setup functions.

The kernel isn't going to support CF on PCMCIA the way you are asking
without some, ummm..."customizations" :-)  You have to modify the PCMCIA
functions so they don't try to use the slot, but you still need to
initialize the I/O.  Then you need a set of IDE setup/support functions in
your board specific files.

This can be done, but isn't pretty and I doubt would ever be selected
as something to be part of a standard kernel.  You may also want to
consider some kind of initrd or small flash file system that has the
PCMCIA services.  You would boot up using something else as the root
file system, then activate the CF on PCMCIA as a source of additional
mounted file systems.

Good Luck!

	-- Dan