UDMA for Compact Flash over PC Card?

Piotras piotras at gmail.com
Mon Mar 19 05:37:32 EDT 2007


Hi all,

I already asked about this on comp.os.linux.hardware, but didn't
get any responses.

CF+ and Compact Flash Specification (rev 4.0) specifies Ultra DMA
as an optional protocol for PC Card:
   "Ultra DMA operations can take place in any of the three basic
   interface modes: PC Card Memory mode, PC Card I/O mode, and True
   IDE (the original mode to support UDMA)." (page 54)

Has anyone tried this? What specific CF memory cards are know to
implement UDMA in PC Card Memory or I/O mode?

I'm looking into experimenting with improving performance of CF
memory card when using a passive adapter under PowerBook G3.
The PC Card is bridged with TI PCI1131. In the datasheet for
PCI1131 I found that it "supports 16-Bit Distributed Direct Memory
Access (DMA) on both PC Card sockets". Also signal names match
the CF specification. I don't have access to the PC Card (obsolete)
specification so cannot check the details there. Does anyone know
of reasons why CF UDMA should work with this controller?

I already experimented with using PC Card Memory mode in ide_cs
(reusing patch from Thomas Kleffel [1]) with Kingston CF/512-S
on Linux 2.6.20. This didn't give any significant performance
improvements. I measured that both common memory and I/O access
time for reading data is around 1us (or longer when wait states
are enabled). It's much more that what I would expect looking
at the PC Card timing diagrams. Is it possible that PCI-PC Card
bridge give such a significant latency in signal propagation?

Also when working with the patch from Thomas Kleffel I noticed
that it probes ide devices in I/O mode!


Regards,

Piotr Krysiuk


[1] http://lists.infradead.org/pipermail/linux-pcmcia/2006-May/003577.html



More information about the linux-pcmcia mailing list