Re: DMA from memory to local bus

From: Robert Hancock
Date: Fri Nov 28 2008 - 22:25:06 EST


Hommel, Thomas (GE EntSol, Intelligent Platforms) wrote:
Hi all,
I'm currently developing a driver and want to make use of the DMA
offload engine. Data has to be transferred from memory to a device on
the local bus and vice versa.
At a first look, the function dma_async_memcpy_buf_to_buf() seemed to be
suitable, but it does not translate addresses correctly. Both addresses
are treated as if they were in memory.

That would be the normal use of these things, I believe.. normally when copying to/from a device the device does it itself with bus master DMA.

In my configuration, the buffer is located in memory, but the device's
I/O space is mapped into vmalloc space via ioremap(). How can I access
the I/O space corectly from the DMA controller?

Thanks for your help
Thomas

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/