With the interesting subcase of DataFlash cards, which are MMC formatbut which only talk SPI protocol. Dataflash would go through MTD.

(Seems to me that DataFlash cards are now "old tech" not being putinto many new systems. Certainly they're not price-competitive withMMC/SD ... DigiKey charges $US 28 for an 8 MB card, quantity one,and that's the local price of a single 256 MB MMC or SD card. Thestory with discrete DataFlash chips seems to be different.)

> They can be used in MMC mode or SPI mode.

Yes, but ... any system with an MMC controller would use them inMMC mode; then they'd be "MMC devices". (Except DataFlash...)

The reason to use them in SPI mode is that that the system mightnot _have_ an MMC controller, yet it might want inexpensiveremovable storage.

(And there's another funky case too. Most MMC controllers willhandle SPI protocol directly; I'm not sure how full the supportis, maybe it's just enough to talk to MMC cards. But systemsthat want SPI -- say, for sensors -- might do that using theirMMC controllers on one of the chipselects that's not used foran external card slot.)

> There have been some queries> about using them in SPI mode, but I don't think anyone's written such> a driver (yet).

Nor does the MMC stack yet understand that notion... it'd likelyhelp a bit if there were an SPI framework to build on!

Teaching that stack how to work in SPI mode, or even representcontrollers which only support SPI protocol, would be a lot morework than just letting SPI drivers optionally provide DMA addressesas well as the CPU addresses for their buffers. :)