[PATCH] mtd: m25p80: make command buffer DMA-safe

Johannes Stezenbach js at sig21.net
Tue Nov 3 05:00:18 EST 2009


On Tue, Nov 03, 2009 at 08:36:05AM +0200, Artem Bityutskiy wrote:
> On Wed, 2009-10-28 at 14:21 +0100, Johannes Stezenbach wrote:
> > spi_write() requires the buffer to be DMA-safe, kmalloc()
> > it seperately to ensure this.
> 
> Even though it is just 4 or 5 bytes it can do DMA? Does not sound too
> sane to use DMA in that case. Does this patch fix a real error?
> 
> I do not know much about SPI, but for me it sounds like there should be
> a method to ask SPI to avoid using DMA, and you should use that method.

It fixes a real error -- with an out-of-tree driver and ancient kernel.
For the flash read/write case it is used with list-DMA (e.g. write 4 bytes,
read 64KB).  There are extensive comments in include/linux/spi/spi.h
which document the DMA-safe requirement of the buffers.

Thanks
Johannes



More information about the linux-mtd mailing list