southbridge/ricoh/rl5c476/rl5c476.c configures the CF slot to use io ports 0x1e0 through 0x1ef.
There are some comments in the file explaining that this is done because "the pcmcia package within Linux then could not re-initialise the device as it tried to take control of it." but maybe this has changed now?
When forcing the ide driver to look in the right place (ide2=0x1e0,0x1ec,5) it does indeed find the CF but it seems that the pccard code takes over later on since it notices that a card is inserted in slot 1.
Trying to open /dev/hde once the system has booted also fails. (I'm running off NFS root for now.)
Where do we want to go with this?
The common case is likely a CF memory card, but on the other hand we want to support any CF device that Linux can handle in the slot.
Treating the CF slot as a PCMCIA slot appears to require an initrd, which I'd like to avoid if possible. (My kernel has ide-cs, but it doesn't pick up the CF card even though pccard reports it is inserted.)
Treating the CF slot as an IDE drive will work for LB, FILO and kernel when booting off of a CF card, but is useless for people wanting to use some other CF device.
Is the problem really that I haven't set up PCMCIA properly in my kernel? (I would expect ide-cs to attach to the card when pccard says there's something in the slot?) Shouldn't this happen by way of the pccardd kernel thread?
I really don't want an initrd with pcmcia-cs just for this..
//Peter